在我的项目中,我通常有一个(开发)分支,导致下一个发布版本,此时开发分支将合并到发布分支,然后将创建一个新的开发分支.
这意味着,两个分支HEAD将指向同一个提交:
$> cd project.git
$> rgrep release .
./packed-refs:2808f1de3e05bf7fcc509c20f31a93e2ba645bd3 refs/heads/release
$> rgrep 2808f1de3e05bf7fcc509c20f31a93e2ba645bd3 .
./packed-refs:2808f1de3e05bf7fcc509c20f31a93e2ba645bd3 refs/heads/release
./packed-refs:2808f1de3e05bf7fcc509c20f31a93e2ba645bd3 refs/heads/development_0103
Run Code Online (Sandbox Code Playgroud)
我希望从我的repo克隆的人自动检查发布分支.
$> cd project.git
$> git symbolic-ref HEAD
refs/heads/release
Run Code Online (Sandbox Code Playgroud)
但是,当从那个回购克隆显然人们得到了按字母顺序排列的第一个匹配分支
$> git clone project.git/ project.clone
$> cd project.clone
$> git status
# On branch development_0103
nothing to commit (working directory clean)
Run Code Online (Sandbox Code Playgroud)
在我看来git正在研究分支名称,通过查看SHA1来检查,但实际上并没有使用遥控器的符号头HEAD.
有没有办法解决这个问题并使克隆默认为'release'而不是'development_0103'?