我被建议在运行 git pull
和 merge 之前提交所有更改。是否有意义 ?如果我运行 pull
和 merge
before 提交我的更改并在 merge 之后提交它们会怎么样?
最佳答案
在提取之前提交并不总是可取的——你应该考虑把你的工作藏起来。
考虑这个问题的更好方法是根据您的临时区域。理想情况下,您希望在尝试 merge 远程更改之前它是干净的(记住,git pull
= git fetch
+ git merge
).
git commit
是实现此目的的一种方法,但它会改变您的历史——如果您担心让您的存储库一直处于工作状态,它会污染它状态。
git stash
是为这样的用例构建的。
Use git stash when you want to record the current state of the working directory and the index, but want to go back to a clean working directory.
来源:http://git-scm.com/docs/git-stash
您的工作流程将如下所示:
$ git stash
$ git pull origin master
$ git stash pop stash@{0}
这将使 pull 可以毫无问题地执行,当应用你的 stash 导致冲突时大声警告你。
关于Git: merge 前提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20925119/