問題

如何在我的分支上儲存多個更改的檔案中的一個?

  最佳答案

更新:以下答案是git 2.13之前的git.對於git 2.13和之後,檢查另一個答案下.


警告

正如評論中所指出的,這將所有內容都放入stash中,無論是分階段的還是未分階段的. –keep-index在完成stash後只剩下索引.當你後來彈出stash時,這可能會導致合併衝突.


這會積壓你以前沒有新增的所有東西,只需git add你想保留的東西,然後執行它。

 git stash --keep-index
 

例如,如果您想將舊提交拆分為多個更改集,您可以使用此程式:

  1. git rebase -i <last good commit>
  2. 標記一些更改為edit.
  3. git reset HEAD^
  4. git add <files you want to keep in this change>
  5. git stash --keep-index
  6. 根據需要修復東西.不要忘記git add任何更改.
  7. git commit
  8. git stash pop
  9. 重複,必要時從#5。
  10. git rebase --continue

  相同標籤的其他問題

gitgit-stash