代码之家  ›  专栏  ›  技术社区  ›  Sergey Mikhanov

如何为单个文件创建分支?

  •  2
  • Sergey Mikhanov  · 技术社区  · 15 年前

    我有一个产品有两个版本,到目前为止,我只能使用编译器标志和ifdefs来管理它们之间的差异。现在,我想为每个产品都有一个单独的图标。代码库的其余部分(包括引用图标文件的源代码)保持不变。我希望在Git分支中保留这些开发流(例如,master、pro和lite),但希望分支pro和lite(a)只包含不同的icon.png文件,以及(b)自动包含对分支master中任何文件所做的所有更改。

    在Subversion中,这可以通过分支单个文件(icon.png)来完成。在Git中有没有类似的方法?

    3 回复  |  直到 15 年前
        1
  •  2
  •   Dmitry    15 年前

    只需创建一个分支:git checkout-b branchname并替换图标。当然还有Git承诺。之后,您可以在父分支中工作(如果愿意,也可以在master中工作),并使用git-rebase将更改拉入branchname。

        2
  •  1
  •   mipadi    15 年前

    不能在Git中为单个文件创建分支。创建分支时,将为整个回购创建分支。(当然,与Subversion不同,分支不会创建文件的实际磁盘上副本,因此分支很便宜,不会占用与Subversion分支相同的额外空间。)

    听起来这个图标更改的分支将是一个长时间运行的分支,也就是说,它将有来自主控形状的更改合并,但是它的更改不会经常被合并回主控形状,并且您将基本上保持分支的永久性。在这种情况下,应该将分支设置为自动 轨道 总分行。你可以通过 --track 选择 git branch git checkout ,创建新分支时(请参见手册页 GIT分支 了解更多详细信息)。

        3
  •  0
  •   Jani Hartikainen    15 年前

    只需分支并提交图标。在Git里应该没问题。然后,当您想要包括来自其他分支的更改时,您只需要合并。