在拉入Git之前我是否必须提交更改?

use*_*521 3 git

看起来我缺少基本的理解,git pull并且git commit,假设我正在使用分支机构,当我在本地工作时,它由其他开发人员更新.我应该在发布之前提交更改git pull还是应该这样做git pull然后再做git commit

gra*_*tii 7

您可以随时进行提交 - 所有提交都是本地的.

只有当您需要到push服务器时才需要拥有最新的副本.因此,pullpush更改之前,始终从远程存储库中获取是一个好主意.

所以,我认为你的意思是"我应该在发出git pull之前推送更改,还是应该执行git pull然后执行git push ".理想情况下pull,您应该push遵循将代码添加到公共存储库的最新副本的基本思想.

您可能会收到通过合并公共存储库获得的一些合并冲突的通知,您需要在最终推送更改之前解决这些冲突.

  • 实际上,最好避免合并到一个脏的工作副本中,因此您应该在拉取之前提交,或者在这样做之前隐藏您的更改。 (3认同)

Mar*_*eal 5

由于当您有未提交的更改时 git 不允许您合并,因此您需要在执行 git pull (先获取然后合并)之前解决这些更改。

你可以

  1. 结帐以删除这些更改

  2. 做出承诺来拯救他们

  3. 我最喜欢的半途而废 - git stash

通过做git stash第一,就可以拉(提取和合并)的变化,然后git stash pop以应用更改的备份。如果有冲突,藏匿不掉线,你会得到一个机会来解决这些冲突。

  • 这并不完全正确,在某些情况下,即使您有未提交的更改,Git 实际上也会让您合并。尽管如此,正如您所指出的,最好在合并之前提交或隐藏您的更改。 (2认同)