2016-04-11 47 views

回答

1

setName()的JavaDoc的說

當僅檢出路徑而不切換分支時,請使用setStartPoint(}指定從哪個分支或提交檢出文件。

而對於addPath()它指出:

如果這個選項被設置,無論是setCreateBranch()也不setName()選項考慮。換句話說,這些選項是獨佔的。

因此,我認爲你應該使用

git.checkout().addPath(...).setStartPoint(...).call(); 
+0

謝謝SOOOO much..it的工作@魯迪格 –

+0

順便說一句,我們可以使用\t \t \t \t \t git.checkout()setAllPaths(真).setStartPoint(Constants.HEAD).CALL()。檢出所有文件與最新版本...謝謝 –

+0

比我更精確的答案。 +1 – VonC

1

您的通話重置指數(並可以刪除文件不再存在於新提交你看看)

你可以找一個更精確的例子jgit/porcelain/RevertChanges.java

// revert the changes 
git.checkout().addPath(fileName).call(); 

在您的情況:

git.checkout().setname(commitId).addPath(fileName).call() 
+0

如果我們使用讓addpath(文件名)正在更新最新的承諾......這是不考慮的setName(的commitid)。@ VonC –

+0

@RenganathanSelvaraju那可能是一個錯誤報告。 – VonC