Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法让Git在共享代码库中管理我的个人测试脚本?_Git - Fatal编程技术网

有没有办法让Git在共享代码库中管理我的个人测试脚本?

有没有办法让Git在共享代码库中管理我的个人测试脚本?,git,Git,当我开发代码时,我通常有一堆我不想与其他开发人员共享的“个人”文件,因为它们是我自己独特的工作流所特有的。这些文件包括个人Makefiles、小测试脚本、测试数据文件等。这并不是一个可怕的问题:我只是在.gitignore中逐项列出这些文件,没有其他人需要为我的松鼠方式而烦恼 然而,并不是所有的一切都是完全相同的。例如,如果我克隆了这个存储库,我的个人测试文件就不会附带,而且这些文件也没有版本控制。也就是说,随着代码的更改,我的测试文件、脚本和makefile需要随代码一起更改。如果我恢复到代码

当我开发代码时,我通常有一堆我不想与其他开发人员共享的“个人”文件,因为它们是我自己独特的工作流所特有的。这些文件包括个人Makefiles、小测试脚本、测试数据文件等。这并不是一个可怕的问题:我只是在.gitignore中逐项列出这些文件,没有其他人需要为我的松鼠方式而烦恼

然而,并不是所有的一切都是完全相同的。例如,如果我克隆了这个存储库,我的个人测试文件就不会附带,而且这些文件也没有版本控制。也就是说,随着代码的更改,我的测试文件、脚本和makefile需要随代码一起更改。如果我恢复到代码的早期版本,我的脚本和测试文件现在将被破坏。或者,如果我在家工作,从工作电脑上的Git克隆中提取,这些个人文件不会被提取到家庭电脑上

所以,如果Git有一个概念,即跟踪和共享文件不同于跟踪和私有文件,那么它真正感兴趣的是。当我推送到共享存储库时,私有文件不会被推送,即使Git正在为我跟踪它们并对它们进行版本控制。当我克隆存储库时,我可以选择只获取共享文件,或者同时获取共享和私有文件

我愿意冒险猜测,就这个功能而言,我只是SOL,但你永远不知道。Git似乎做了几乎所有的事情,所以也许它也有这样做的方法,而我只是被排除在循环之外


一个可能的解决办法是为这些东西(例如,“dougs personal Rup”)创建一个子目录,并告诉我的同事不要弄乱它。但是我真的不想把脏衣服晾干,所以,特别是如果有更好的方法的话。

我想只有一种很好的方法可以做到这一点

  • 将所有员工分为私人员工和公共员工
  • 将公共内容移动到XXX存储库
  • 将私有内容移动到YYY存储库
  • 创建一个大型超级存储库ZZZ
  • 将XXX和YYY作为子模块添加到ZZZ存储库

  • 因此,您拥有一个存储库,其中包含一些公共内容和您的私有数据、脚本等。您可以轻松克隆ZZZ存储库。您还可以轻松地共享XXX存储库。享受吧

    另一种方法是使用


    它让您可以将个人资料保存在git跟踪目录中,远离git,并可进行备份。

    您可以进一步使用子目录方法,将其作为一个独立的git存储库。虽然不方便,但可以完成工作。可能也会有帮助。嗯,我只是浏览了关于子模块的ProGit一章。它看起来很有希望,尽管子模块对于这项工作来说似乎是一把大锤子,而且在使用子模块时,您显然必须注意所有这些小问题。我得试一试。谢谢@Douglas我还认为使用子模块几乎总是杀伤力过大(超出了几个用例)。而且它的使用要复杂得多。但是我喜欢它们。祝你好运