作为新的git用户,我对以下步骤感到困惑。创建新功能分支时,我被告知要执行以下操作
first make sure you got latest changes from remote (git fetch / git merge)
create new branch my-branch and check it out
make change
git add . //stage changes
git commit -m "my message"
repeate above as many times as needed
然后,当准备将完成的工作推送到远程时,请确保已将最新的远程更改放入新分支my-branch
git fetch origin //get latest changes from origin
git merge origin/my-branch // merge the latest changes on remote into my-branch
git push origin my-branch // push my branch to remote
但是,阅读git教程后,我发现他们建议在使用创建分支之后立即将新分支推入源头
git push -u origin my-branch
then work on your changes, stage, commit
then push like this
git push
我被告知做错了吗?
哪种方法更好?为什么?
答案 0 :(得分:2)
-u
开关(--set-upstream
的缩写)使您计算机上的git记住origin/my-branch
是本地my-branch
的上游。如果使用它,随后您将可以在同一分支上简单地git push
进行操作,而git将知道将其推送到何处。否则,每次按下时都必须指定远程名称和远程分支名称。
因此,回答您的问题:在大多数情况下,您都希望使用-u
,除非您确定不会将本地分支再次推送到该远程分支(无论出于何种原因) )。