相关疑难解决方法(0)

轻松获取最新的git子模块

我们使用git子模块来管理一些依赖于我们开发的许多其他库的大型项目.每个库都是作为子模块引入依赖项目的单独repo.在开发过程中,我们经常想要抓住每个依赖子模块的最新版本.

git有内置命令来执行此操作吗?如果没有,Windows批处理文件或类似文件怎么样呢?

git git-submodules

1748
推荐指数
18
解决办法
95万
查看次数

在Visual Studio中使用Git的最佳实践?

我正在考虑在工作中从Subversion迁移到Git,并希望了解在Windows上设置Git的最佳方法,以及Visual Studio和Git组合可能产生的任何问题.

目前的设置是TortoiseSVN,Visual Studio 2008和AnkhSVN for .NET应用程序.替换可能是Git Extensions.

有关存储库布局的建议将特别受到赞赏.我们所有的解决方案都使用多个项目,现在我们需要在应用程序之间共享许多自定义程序集.我们的Subversion存储库的当前布局肯定不是最佳的.

更新:我现在使用Git Extensions迁移到Git,它运行得很好.共享代码和资产位于不同的存储库中,并用作子模块.当我开始时,我发现子模块有点混乱,这篇文章非常有帮助.

.net git visual-studio

31
推荐指数
2
解决办法
1万
查看次数

将遗留代码库从cvs转移到分布式存储库(例如git或mercurial).初始存储库设计所需的建议

介绍和背景

我们正在改变源代码控制系统,我们目前正在评估git和mercurial.总代码库大约有600万行代码,因此不是很大,也不是很小.

首先让我简单介绍一下当前存储库设计的外观.

我们有一个完整代码库的基本文件夹,在该级别下面有几个不同的上下文中使用的各种模块.例如,"dllproject1"和"dllproject2"可以看作完全独立的项目.

我们正在开发的软件是我们称之为配置器的软件,可以根据不同的客户需求进行无休止的定制.总共我们可能有50个不同的版本.但是,他们有一个共同点.它们共享一些必需的模块(mandatory_module1 ..).这些文件夹基本上包含内核/核心代码和公共语言资源等.然后,所有自定义都可以是其他模块(module1 ..)之间的任何组合.

由于我们目前正在使用cvs,因此我们在CVSROOT/modules文件中添加了别名.他们可能看起来像:

core –a mandatory_module1 mandatory_module2 mandatory_module3
project_x –a module1 module3 module5 core
Run Code Online (Sandbox Code Playgroud)

因此,如果有人决定使用project_x,他/她可以快速检查所需的模块:

base>cvs co project_x
Run Code Online (Sandbox Code Playgroud)

问题

直观地说,将基本文件夹作为单个存储库感觉是错误的.作为程序员,您应该能够查看当前正在使用的项目所需的确切代码子集.你对此有何看法?

另一方面,将每个模块放在不同的存储库中感觉更为正确.但这使得程序员更难以检查出他们需要的模块.您应该能够通过一个命令执行此操作.所以我的问题是:在git/mercurial中是否有类似的方法来定义别名?

任何其他问题,建议和指示都非常欢迎!

PS.我已经搜索了类似的问题,但并不觉得他们中的任何一个都100%适用于我的情况.

git cvs mercurial dvcs

12
推荐指数
2
解决办法
4246
查看次数

无法`git submodule foreach git pull`

这个问题基于这个主题.

我的.gitmodules在我家

[submodule "bin"]
           path = bin
           url = git://github.com/masi/bin.git
Run Code Online (Sandbox Code Playgroud)

我的文件夹 - 我家的结构:

~
|-- [drwxr-xr-x] bin          // this is the folder which I make a submodule
                              // it is also a folder where I have a Git to push my submodule's files
    | -- fileA
    ` -- folderA
    ...
Run Code Online (Sandbox Code Playgroud)

我跑

git submodule init    # I get no output from these commands
git submodule update          
Run Code Online (Sandbox Code Playgroud)

我跑

git submodule foreach git pull
Run Code Online (Sandbox Code Playgroud)

我明白了

Entering 'bin'
fatal: Where do you …
Run Code Online (Sandbox Code Playgroud)

git repository git-pull git-submodules

4
推荐指数
1
解决办法
1万
查看次数