我在sourcetree中有这个历史图: SourceTree graph
如何将最后一次提交从origin / development复制到origin / master分支?
第二个问题是:符号的含义是什么?起源/发展","主","起源/主人"和" origin / HEAD"在图片中?
答案 0 :(得分:3)
将更改从开发分支推送到主数据库:
这会将本地开发分支与服务器上的分支同步。
从GitLab,使用工具创建Pull Request,然后将其合并到master:
origin / development是对名为development的分支的引用,该分支位于名为“origin”的远程存储库中。在本地工作时,可以通过以下方式将更改推送到远程存储库:
git push origin `<branch>`
这适用于您创建的新本地分支。要为服务器上的现有分支设置远程跟踪分支,首先应运行另一个命令。例如,如果存在名为“development”的现有远程分支:
git branch development origin/development
如果您想将origin / development设置为(local)/ development的上游分支,那么:
git branch -u development origin/development
这允许您从原点进行推拉,而无需明确指定“origin”:
即。
git push
git pull
而不是:
git push origin development
git pull origin development
答案 1 :(得分:1)
要将分支“origin / development”中的提交合并到“master”中,您需要将origin / development“合并”为master。您可以通过使用命令git checkout master
检出目标分支(主)来完成此任务。
然后使用命令git merge origin/development
执行合并。在成功之前,您可能必须解决合并冲突。
回答第二个问题:符号是源树的Git“分支”。 origin / master和origin / development是所谓的远程分支。它们代表了远程Git存储库的最新已知修订版本 - 在本例中为“origin”。您当地的分支机构掌握和开发是这些分支机构的本地副本。
由于您似乎没有掌握Git的入门级概念,我强烈建议您阅读Git Book - 它将为您提供基础知识,然后构建更高级的概念
答案 2 :(得分:1)
origin/development
和origin/master
是远程跟踪分支,代表development
服务器上master
和origin
分支的状态。您不直接修改这些内容,而是在pull
或fetch
origin
时更新。{/ p>
要更新它们,您可以将所需的更改提交到本地development
或master
分支,并将这些更改推送到origin
。但首先,请执行pull
或fetch
以确保您正在使用这两者的最新版本。
在这种情况下,一个简单的快捷方式是将您的分支更改为master
,reset --hard
更改为origin/development
,这会强制您将本地master
的当前状态更改为origin/development
的{{1}},然后推送到原点,这会导致origin/master
收到origin/development
中现在存在的所有其他提交(来自master
)。请注意,这仅适用,因为origin/master
不包含origin/development
中尚未包含的任何提交。