git submodule add -b工作怎么样?
添加具有特定分支的子模块后,新的克隆存储库(之后git submodule update --init)将处于特定提交,而不是分支本身(git status在子模块上显示"当前不在任何分支上").
我无法找到任何信息.gitmodules或.git/config关于子模块的分支或任何具体的承诺,那么,如何Git的数字出来?
此外,是否可以指定标签而不是分支?
我正在使用1.6.5.2版.
我需要一种递归删除文件夹及其子项的方法.
是否有预制的工具,或者我需要写一个?
DEL /S 不删除目录.
DELTREE 已从Windows 2000+中删除
我想在我的Git超级项目中更改Git子模块的目录名.
假设我的.gitmodules文件中有以下条目:
[submodule ".emacs.d/vimpulse"]
path = .emacs.d/vimpulse
url = git://gitorious.org/vimpulse/vimpulse.git
Run Code Online (Sandbox Code Playgroud)
我必须键入什么来移动.emacs.d/vimpulse目录.emacs.d/vendor/vimpulse而不首先删除它(在这里和这里解释
),然后重新添加它.
Git真的需要子模块标签中的整个路径
[submodule ".emacs.d/vimpulse"]
Run Code Online (Sandbox Code Playgroud)
或者是否也可以只存储子项目的名称?
[submodule "vimpulse"]
Run Code Online (Sandbox Code Playgroud) 我有一个子模块的项目 lib/three20
我的.gitmodule文件看起来像这样:
[submodule "lib/three20"]
path = lib/three20
url = git://github.com/facebook/three20.git
Run Code Online (Sandbox Code Playgroud)
我过去克隆过这个没有错误,(git submodule init接下来是a git submodule update)并且它已经工作了一段时间.
我试图将其克隆到一台新机器,现在我收到此错误git submodule init:
No submodule mapping found in .gitmodules for path 'Classes/Support/Three20'
Run Code Online (Sandbox Code Playgroud)
该路径只是Xcode中的一个空文件夹,用于存放其他目录中的项目.它不是.gitmodules文件的一部分,所以我看不到它从哪里获得这条路径.
有任何想法吗?
我试图寻找一个关于减少回购规模的好教程,但没有找到.我如何减少我的repo大小...它大约10 MB,但事情是Heroku只允许50 MB,我不在附近完成开发我的应用程序.
我已经将通常的嫌疑人(日志,供应商,文档等)添加到.gitignore.虽然我最近只添加了.gitignore.
有什么建议?
是否有一些简单的方法来重命名git子模块目录(除了完成删除它并重新添加新目标名称的整个动作 ).
虽然我们在这,但为什么我不能在父目录中执行以下操作: git mv old-submodule-name new-submodule-name
这是我.gitmodules文件内容的一部分:
[submodule "src/static_management"]
path = src/static_management
url = git://github.com/eykd/django-static-management.git
[submodule "external/pyfacebook"]
path = external/pyfacebook
url = http://github.com/sciyoshi/pyfacebook.git
Run Code Online (Sandbox Code Playgroud)
但是,.git/config只包含第一个:
[submodule "src/static_management"]
url = git://github.com/eykd/django-static-management.git
Run Code Online (Sandbox Code Playgroud)
第二个子模块(external/pyfacebook)由功能分支中的另一个开发人员添加.我现在继承了开发,并检查了功能分支.但是,Git不会为我拉这个子模块.我试过了:
git submodule initgit submodule updategit submodule update --initgit submodule sync.git/config并运行git submodule init.它只复制先前存在的子模块并忽略新的子模块..git/config手动输入新的子模块定义并运行git submodule update.只有以前存在的子模块才能更新.在各种组合中,但是git根本不会.git/config根据新内容进行更新.gitmodules,也不会创建external/pyfacebook文件夹并拉出子模块的内容.
我错过了什么?手动干预(手动添加子模块条目.git/config)是否真正需要,为什么?
编辑:手动干预不起作用.手动添加新的子模块条目.git/config不会做任何事情.新的子模块被忽略.
如何用不同的git repo替换git子模块?
具体来说,我有一个子模块:
./ExternalFrameworks/TestFramework那个点到git repogit@github.com:userA/TestFramework.git git@github.com:userB/TestFramework.git.问题是当我用这里描述的方法删除子模块时,然后使用该命令重新添加它
git submodule add git@github.com:userB/TestFramework.git
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
A git directory for 'ExternalFrameworks/TestFramework' is found locally with remote(s):
origin git@github.com:userA/TestFramework.git
If you want to reuse this local git directory instead of cloning again from
git@github.com:userB/TestFramework.git
use the '--force' option. If the local git directory is not the correct repo
or you are unsure what this means choose another name with the '--name' option.
Run Code Online (Sandbox Code Playgroud) 对于Mac上的git版本1.9.3(Apple Git-50)如何删除git子模块?我正在阅读很多过时的信息,许多开发人员告诉我他们不会工作.目前的方式是什么?会git deinit pathToSubModule 做的伎俩?
我认为可行的步骤在这里,但评论说他们不会.
让我解释一下我目前的情况以及我需要完成的工作.我已经安装了快速存储库并将其添加到我的项目的子模块中.此代码已经签入,其他人正在使用它.我现在需要做的是分叉相同的Quick存储库并将其托管在我公司拥有的更安全的github上(所以完全是其他私有github).在分叉之后我想将该fork添加为gitSubmodule并让它替换我之前安装的当前Quick子模块.
更新:我已经读过以下是关于最新git版本的正确方法请确认一下?
To remove a submodule added using:
git submodule add blah@blah.com:repos/blah.git lib/blah
Run:
git rm lib/blah
That's it.
For old versions of git (circa ~1.8.5) use:
git submodule deinit lib/blah
git rm lib/blah
git config -f .gitmodules --remove-section submodule.lib/blah
Run Code Online (Sandbox Code Playgroud) 我遇到了无法将文件添加到存储库的问题.
我在Windows上使用GIT,在Aptana Studio中进行一些Ruby开发.
我已经设法将一些文件推送到GitHub,但在此之后,一切都停止了.我的主目录中有一个新的子文件夹,里面有2个ruby文件.如果我调用"git add.",然后"git status",它会一直说"工作目录清理"并且没有任何提交.
我试过"git add folder/myfile.rb"但仍然没有.
有人知道我能尝试什么吗?