2014-08-28 50 views
2

我看了question and answer for staging files in a non-bare repository。但是,我正在使用裸存儲庫,並且想要分段文件。如何在裸倉庫中使用JGit來存檔文件?

我試過使用test for DirCacheBuilder,但代碼Repository.lockDirCache()Repository.readDirCache()失敗,因爲這是裸存儲庫。

org.eclipse.jgit.errors.NoWorkTreeException:純倉庫既不具有工作樹,也不在org.eclipse.jgit.lib.Repository.getIndexFile(Repository.java:993)的索引 在有機.eclipse.jgit.dircache.DirCache.read(DirCache.java:166) 在org.eclipse.jgit.lib.Repository.readDirCache(Repository.java:1017)

所以,我怎麼可能上演文件在使用JGit的裸倉庫中?這甚至有可能嗎?

+1

如果你最終要承諾一個純倉庫(這是你真正想要做什麼)這個問題可能是你的興趣:http://stackoverflow.com/questions/22320996/jgit-bare-commit-樹建設 – 2014-08-28 13:23:47

回答

5

我怎麼能階段使用JGit裸庫文件?

你不會的,因爲錯誤狀態:

Bare Repository has neither a working tree, nor an index 

沒有索引,意味着沒有升級。

0

你不能「舞臺」的文件,但你仍然可以添加新的文件,並承諾裸庫。 Here's a good snippet