Git:从远程拉取数据后,你需要提交吗?

dwthyt8l  于 2023-04-10  发布在  Git
关注(0)|答案(2)|浏览(121)

如果我在一个本地分支上,从远程分支拉取,然后尝试切换到另一个分支,它会告诉我首先提交或隐藏更改。我认为当我进行拉取时,我会从远程分支获得所有新提交,并且我的本地分支将与远程分支保持最新状态。如果我在这次拉取之后进行额外的提交,我唯一要添加的新信息是我已经完成了pull操作。我可以直接pull操作而不需要添加提交消息吗?

sbtkgmzw

sbtkgmzw1#

Git不会在从远程拉取后立即提示你提交/隐藏。
因此,我更喜欢默认设置为stash + pull --rebaseGit 2.6+

git config --global pull.rebase true
git config --global rebase.autoStash true

这样,一个简单的git pull将在刷新后的origin/myCurrentBranch上重放(重定基)我的本地提交(尚未推送的提交),确保我的本地工作不会被覆盖。
任何正在进行的工作首先会自动隐藏,然后在变基后恢复。
此外,如果我有“未提交”的工作(本地修改尚未添加到索引并提交),“autostash”部分确保正在进行的工作在拉取之前保存,并在拉取之后重新应用。

qhhrdooz

qhhrdooz2#

我强烈prefer做什么VonC建议更明确,没有任何具体的配置:

git commit -am "==== before pull ===="    # Temporary commit
git pull --rebase
git reset HEAD^                           # Undo temporary commit

如果发生冲突,use KDiff3解决它们。

相关问题