小编Nay*_*Nay的帖子

如何使用git/github处理两个独立但非常相似的代码库?

在git和git-hub中处理两个独立但非常相似的代码库的最佳方法是什么?

背景

我有一个小型shell脚本项目的git存储库.它只有2或3个代码文件,我经常在一个文件中工作.虽然我最初的目标是服务于我的特定目标,但我认为它对其他人来说更有用.我编写了一般用例版本,然后将其修改为特定于我的特定目标.在特定的版本中,我可能会修改变量,输入密码,切换一些代码的顺序,取出for循环......无论如何.

我尝试了什么

我尝试了两种不同的方法,并且都没有像我认为的那样最佳:

  1. 两个单独的回购
    • 问题:代码修改为一个,不能轻易地和有选择地合并到其他
  2. 一个回购中的两个分支
    • 问题:分支最终会合并在一起.我并不是要将这些完全合并在一起,而是有选择地合并部分代码.
    • 问题:我发现当尝试在分支之间使用合并命令时,很容易混淆什么分支被合并的代码.我以某种方式合并了其中两个完全无意的代码,直到我查看了两个分支中文件的内容时才发现不正确的合并

我还看到了如何将两个单独但相似的代码库合并为一个SVN代表?那是关于SVN的.因为我不知道SVN,所以我很难跟随.我认为这是一个不同的问题,因为他并没有试图公开这个代码的一个版本.

我希望解决的用例

具体来说,问题出现在:

  • 评论同步 - 我正在准备我的专业版,并注意到我可以在一行末尾添加一个解释性评论.我添加它,但评论现在不在通用版本中.
  • 东西我不想共享 - 我正在准备我的专业版本,我添加了密码或更改操作的完成顺序.我不希望这些更改进入通用版本.
  • 相同的文件 - 以上两个更改通常位于同一个文件中,这使得很难将内容合并在一起.有交互式合并,但我不知道是否可以在单个文件中完成交互.
  • 常规 - >专业 - 我或其他人可能会更新通用版本,以获得在我的专业版本中也有用的新内容或注释.我想把这些从一般 - >专业,而不是在专业版本中的任何其他代码差异搞乱.

Git vs Github

大多数情况下,我的问题是想知道如何在git的范围内做到这一点.但是,它也可能影响如何与github进行交互.我的通用版本在github上.专业版不应该在github上.我,我的分支方法上面没有推两个分支,如果我很小心......但我总是不确定.无论哪种方式,解决方案应该允许有一个公共版本,一个版本只是本地保存...即使它有点复杂或需要小心.

git github codebase

6
推荐指数
1
解决办法
1882
查看次数

标签 统计

codebase ×1

git ×1

github ×1