我知道本地分支机构可以跟踪远程分支,但是本地分支也可能跟踪另一个本地分支。这是一个什么用例?
答案 0 :(得分:1)
真实世界使用:
我有一个上游存储库,以及一个跟踪该远程的本地分支。我开始研究一个主要的“功能”,需要进行大量的更改才能实现,但我还不想将工作暴露在上游(可能是永远)。
所以我创建了一个跟踪我的跟踪分支的本地分支。现在我有origin/master
,master
跟踪该信息,feature
跟踪master
。因此,每当更新origin/master
时,我都可以使origin/master
保持最新状态,然后在本地master
中的任何未提交的更改之上应用我的功能特定更改。
feature
没有直接跟踪origin/master
的原因是它可能依赖于本地master
分支中的工作,该工作尚未提交但不够重要保证自己的功能分支。
这对于多个独立功能也很有用 - basefeature
跟踪master
和subfeature
跟踪basefeature
。
答案 1 :(得分:0)
这是我真正需要的另一个:
我们正在处理一个大型项目,有多个团队致力于多个功能。因此,我们有master
,feature-1
,feature-2
等分支。
假设我目前正在feature-1
上工作。在功能分支上工作并不意味着实际上要提交至该分支,而是从该分支分支出来。假设我已经使用此功能几个月了。我经常使用git diff HEAD feature-1
和其他涉及我正在处理的功能分支的命令。
两个月后,我开始在另一个分支工作。现在,可以这么说,在运行命令以使用新功能分支名称feature-3
时,我必须小心。
拥有一个分支active-feature
指向我当前正在使用的功能分支会更容易吗?我的意思是,我正在研究feature-1
,然后可以轻松运行git diff HEAD active-feature
。当我在开发另一个功能时,我只需要将active-feature
设置为新功能分支,此后我就可以轻松使用active-feature
归结为新功能分支。