2017-06-27 31 views
1

例如,jgit diff返回1個已更改的文件,我想將其恢復爲版本化版本。在正常的git我只想使用命令行jgit,如何將單個文件簽出回其git版本?

$ git checkout path_to_file 

我試圖

$ jgit checkout origin/master -- path_to_file 

,但沒有什麼變化,沒有錯誤,什麼都沒有和文件保持

UPDATE

我想:

  1. $ jgit checkout origin/master -- path_to_file - 沒有變化
  2. $ jgit checkout -- path_to_file - 沒有變化
  3. $ jgit checkout path_to_file - 錯誤:error: pathspec path_to_file' did not match any file(s) known to git.
  4. $ jgit clean - 要清理未跟蹤文件,而不是未經跟蹤的變化
  5. $ jgit checkout -f origin/some_other_branch; $ jgit checkout -f origin/master - 希望這將壓扁的變化,但隨後只是第二個命令失敗,因爲「更改將被覆蓋」
  6. ...和更多的事情我不記得任何更多的c :)
+0

你的命令略有不同。遺漏'origin/master'是否改變了什麼? –

+0

@RüdigerHerrmannno :(我在帖子中添加了我嘗試過的東西,到目前爲止,我唯一的解決方案是手動調整文件以使其與repo不同,每次有一個進取的系統管理員認爲「他會只需在配置XML中更改此URL「 – bbozo

+0

jgit應該完全替代git嗎?爲什麼你不能同時擁有這兩個? – hasen

回答

2

其實我只是想和jgit checkout -- path_to_file作品對我來說:

~/Development/Eclipse/jgit (master) 

$ org.eclipse.jgit.pgm/target/jgit --version 
jgit version 4.9.0-SNAPSHOT 

$ org.eclipse.jgit.pgm/target/jgit status 
On branch master 

$ echo "dummy" > pom.xml 

$ org.eclipse.jgit.pgm/target/jgit status 
On branch master 
Changes not staged for commit: 

     modified: pom.xml 

$ org.eclipse.jgit.pgm/target/jgit checkout -- pom.xml 

$ org.eclipse.jgit.pgm/target/jgit status 
On branch master 
+0

你使用的是什麼版本? – bbozo

+1

什麼版本,jgit?我的帖子說:'jgit版本4.9.0-SNAPSHOT'(從昨天的'master'分支構建而成)。 – sschuberth

+0

FWIW,我也嘗試了最新版本'4.8.0.201706111038-r',同樣的事情,也適用於我。如果它也適合你,請接受答案? – sschuberth

相關問題