下面是一个场景:
我已经创建了两个分支- b1,b2 2提交,这两个分支都有不同的文件被更改和提交
当我将文件提交到b1中时,特定于b1的2个文件将被提交
将文件签入分支-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 &提交特定于b2的6个文件时,将提交6+5文件
将文件签入分支-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"在第二种情况下,签入的是来自分支的文件-b1+来自分支-b2的文件。
实际上,当我创建一个新分支(如b3)而不提交任何文件时,我会在分支b3和主服务器之间做一些区分。我看到为分支b1签入的文件
例如:
git checkout -b "Branch-b3"
git diff Branch-b3 master
--- shows the files from Branch-b1
/path/file1.scala
/path/file2.scala对我做错了什么有什么想法吗?以及如何解决这个问题?
发布于 2018-03-10 00:51:30
您正在Branch-b1的基础上创建Branch-b1(以及您的描述--可能也是Branch-b3 )。因此,每个分支都将包含来自其前身的所有文件。
git checkout -b是git branch的快捷方式,其次是git checkout (即创建一个新分支并立即切换到它)。另一方面,git branch将在当前头上创建一个新分支,这是当前分支的尖端。
在使用master创建新分支之前,您需要切换回git checkout -b。
https://stackoverflow.com/questions/49204197
复制相似问题