Git: merge 前提交?

标签 git git-merge git-commit

我被建议在运行 git pull 和 merge 之前提交所有更改。是否有意义 ?如果我运行 pullmerge 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/

相关文章:

切换到子模块时 merge Git

windows - 如何将提交哈希添加到可执行文件的详细信息

android - 更改名称后提交类(class)

git - 在 github 上创建单个提交的 pull 请求

git - 如何限制用户对git团队开发系统中文件的访问?

git - checkout 后回到 git 中的最新提交

git - 修改使用 merge 以使用 rebases 的 git 主题分支的历史记录

git - 使用 protected 分支在本地解决 merge 请求

git - 我如何在过去进行 Git 提交?

c++ - 如何在 Windows 上构建 git?