我试图了解如何在Git中创建映射到我的开发过程的目录结构。
顺便说一句,我是Git的新手,但不是源代码控制。我使用GitLab作为我的存储库管理器。
我已将我的存储库添加到GitLab并成功克隆了存储库。
我想要创建的开发过程如下:
主人|完成| QA | INT
每当有人克隆存储库时,他们都会自动看到这个分支结构,并将在int
分支上运行。
我已经尝试过运行命令,认为它会创建结构,但它不会出现(也许我错了)。
git checkout -b Done master
git checkout -b QA Done
git checkout -b INT QA
git branch
Done * INT QA master
无论如何,我假设我错过了一些简单的事情(希望如此)。
有没有人对如何设置这个简单的分支层次结构有任何见解?
由于
答案 0 :(得分:10)
你可能对git branches有一些误解。
A<-B
表示A is a parent of B
或based on A, we make some changes and commit them, so we get a new commit B
。蓝色虚线箭头表示the branch points to a commit
。
如果我们通过Done
将master
合并到git checkout master;git merge Done
,就像:
在Git中,分支引用是一个变量,用于存储它指向的值或引用。该值不是常数。每个提交都记录其父提交的sha1。根提交A
有0个父项。合并提交G
有2个父母。左侧提交有1个父级。 git log -1 <commit> --pretty=%P
或git log -1 <commit> --pretty=raw
可以显示父sha1。
答案 1 :(得分:2)
结构已经存在。你已经成了你的分支机构。现在,它由合作者做一些工作。以下是如何设置默认分支的方法,如果它与master
更改Gitlab中的默认分支: