git - 在Branch-1中检查的文件,显示在Branch-2中

时间:2018-03-10 00:44:32

标签: git

以下是该方案:

我创建了2个分支 - b1,b2为2个提交 这两个分支都改变了不同的文件。致力于

当我将文件提交到b1时,特定于b1的2个文件将被提交

将文件签入Branch-b1

git checkout -b "Branch-b1"
git add /path/file1.scala
git add /path/file2.scala
git commit -m "<Comment>"
git push -u origin "Branch-b1"

但是,当我创建b2&amp;提交特定于b2的6个文件,6 + 5个文件正在提交

将文件签入Branch-b2

git checkout -b "Branch-b2"
git add /path/file3.scala
git add /path/file4.scala
git commit -m "<Comment>"
git push -u origin "Branch-b2"

在第二种情况下,要检查的是 - 来自Branch-b2的Branch-b1 +文件的文件

事实上,当我创建一个新分支(例如b3)并且不提交任何文件时,&amp;我之间做了一个差异 分支机构b3&amp;主人。我看到为分支b1

签入的文件

例如。

git checkout -b "Branch-b3"

git diff Branch-b3 master
--- shows the files from Branch-b1
/path/file1.scala
/path/file2.scala

关于我做错的任何想法? 以及如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您正在 Branch-b2之上创建Branch-b1 (并且您的说明中也可能Branch-b3)。因此,每个分支将包含其前任的所有文件。

git checkout -bgit branch的快捷方式,后跟git checkout(即您创建一个新分支并立即切换到它)。另一方面,git branch将在您当前的HEAD 之上创建一个新分支,这是您当前所在分支的一角。

在使用master创建新分支之前,您需要切换回git checkout -b