好吧!我创建了一个分支prac
。我正在做我的改变,承诺并将它们与主人合并。
简而言之,这就是我通常为我的工作流程所做的工作,包括两个分支,即Master和Prac。每当我想做某事时,我都会在prac分支中编码
git checkout prac
git添加任何东西,git commit -m"所以n so"
git checkout master
git merge prac
我不会删除我的分支通常是一个心态,我总是有一个分支练习和掌握最终代码的展示。欢迎评论提高我的心态:D
现在,我故意点击git push
。我注意到以下
致命:当前的分支实践没有上游分支。 要推送当前分支并将远程设置为上游,请使用
git push --set-upstream origin prac
现在,我的问题是,如果我将此prac分支的上游设置为远程,那么我是否需要进行合并?或者它与合并有何不同?
根据我的理解,在设置上游后,我已经将更改推送到主回购。那么合并会留下什么?或者这是否会推送到一些必须在以后推送的新实例/ fork?
困惑我的朋友混淆!!!
答案 0 :(得分:0)
upstream
设置是本地分支与远程仓库上的分支之间的关系。它与将一个本地分支合并到另一个本地分支无关(除非你设法配置设置的反常组合);它影响了在执行push
时如何更新引用(在没有配置或命令参数指定不同行为的情况下),以及(如注释中的torek指出)也可以作为合并的默认引用。
因此,如果您在本地git push
分支上,prac
默认会更新origin
prac
分支。但是这并没有将prac
更改合并到master
任何回购 - 这是merge
所做的。
答案 1 :(得分:0)
让我感到震惊的是,我看到另一个回购下拉列表中有分支。所以我通过设置上游来推动我的分支,它完成了我的想法。它只是在我的仓库中添加了一个新的分支与主人。
所以我想这会回答我的问题
根据我的理解,在设置上游之后,我已经推了推 主要回购的变化。那么合并会留下什么?或者这样做 推送到一些必须在以后推送的新实例/ fork?
同样从这里我也清楚合并的事情。它正在比较苹果和橘子。
然而,torek指出有用的文章关于合并和详细的见解。在做完这个之后马克的回答更有意义。因此接受