是否可以在远程主存储库中创建分支而无需存储库的本地克隆?
存储库足够大,克隆副本只是为了制作和推送分支是非常浪费的(大约20分钟),特别是由于程序和功能原因由自动化系统制作分支,并且它不需要存储库本身的内容。
答案 0 :(得分:5)
不基于现有分支,但您可以使用全新的无关存储库推送空分支。请尝试以下测试说明
为测试创建原始仓库
cd ~/Desktop/test
mkdir original_repo && cd original_repo
git init && touch testfile && git add . && git commit -m "master repo"
cd ..
创建一个新的空仓库
mkdir hacky_repo && cd hacky_repo
git init && touch init && git add . && git commit -m "empty new repo"
将原始仓库作为遥控器添加到此仓库
git remote add original ../original_repo/
现在将分支从此回购推送至原始回购
git push original master:some_new_branch
cd ../original_repo
如果您现在执行git branch
- 您的原始仓库中应该有新的分支。
$) git branch
* master
some_new_branch
这里的假设是您事先知道所有分支/分支命名空间都是免费的。
答案 1 :(得分:2)
除了从任何仓库推送分支外,其他可能性包括在服务器上设置某种监听器以便:
但是假设你有权访问该服务器。
如果服务器是GitHub,您将无法做到这一点,但您可以使用GitHub API,例如“Create a reference”。