将项目推送到不同的GIT存储库

时间:2016-05-19 16:12:11

标签: git visual-studio-2013 git-extensions

在我的Visual Studio 2013中,我有一个解决方案,其中包含少数项目。其中,我包含一个项目,我存储了我在不同项目中使用的类。这些项目位于我硬盘上的不同目录中。

  • 解决方案X.
    • 项目1
    • 具有公共类(不同文件夹)的项目
    • 带有处理Sparql(不同文件夹)的类的项目
    • 带有插件合约接口的项目
    • ...

我使用Visual Studio AddIn Git Extensions 进行源代码管理。现在我想将每个项目推送到不同的存储库。当我尝试为一个项目添加一个新的git存储库时(右键单击项目> sourcecontrol> git> commit),它总是推送整个解决方案(并将所有项目粘贴到该项目的本地文件夹中)。

使用svn推送到不同的存储库没有问题,但我无法找到,如何使用Git(扩展)

提前致谢,
弗兰克

1 个答案:

答案 0 :(得分:0)

svn得到了一个很好的设施,在其他方面受到了权衡。

如果要切片子目录的历史记录,请执行

git branch sliceme
git filter-branch --subdirectory-filter path/to/that/subdir \
        -- --full-history sliceme \
        -- path/to/that/subdir

第一个--从用于生成提供新历史记录的提交的rev-list args中分离filter-branch规范,第二个--将rev-list的选项和commit-set边界分隔开来它用来跳过不感兴趣的提交的路径过滤器。