2011-07-26 33 views
19

當我想要將一個新文件拆分爲多個提交時,我可以使用,然後使用git gui以交互方式顯示線段。然而,當我在升級時出錯時,git gui不會讓我暫停各條線,因爲它是一個新文件(這對我來說似乎是一個錯誤)。當然,我總是可以取消整個文件並重新開始,但是我想知道是否有更有效的方式來完成此操作。我正在使用git 1.7.5什麼是在git中取消部分新文件的最快方法?


要澄清,這個問題是特定於又名未跟蹤文件!

回答

1

使用fugitive您可以輕鬆地做到這一點。只需調用:Gdiff命令,然後暫停和取消任何你想要的。你甚至可以直接編輯索引文件。當然,這種解決方案需要你與vimvimdiff還算舒服......

6

在命令行中鍵入:

git reset -p 

這將使用標準的命令 - 讓你從索引selectivelty unstage帥哥用於管理胖子的線路界面。這與git add -p相反。

UPDATE

OK,這樣看來,你不能選擇不同的階段時,俊男該文件是新的。鑑於git-gui和標準的git hunk編輯器都不允許這樣做,所以這可能是不可能的。

1

我剛剛遇到同樣的問題:我剛剛提交了一個新文件,並且我想取消該文件中的某些行並將其作爲單獨的提交。我摸索出的解決方案是:

  • 開始就犯,增加了新的文件
  • 刪除你想要的源文件中unstage線,舞臺的變化和git commit -m 'REVERTME'
  • 創建一個新的承諾是將恢復最新的commit:git revert HEAD
  • 使用git rebase -ifixup第一個新的提交,以及可選的reword復歸提交。
0

對此進行排序的另一種簡單方法是將除第一次提交中需要的一行外的所有內容剪除。分級,然後添加文件的其餘部分。從那時起,你可以像往常一樣登臺帥哥/行

相關問題