在远程存储库中创建分支而无需本地存储库

sim*_*ser 4 git git-branch

是否可以在远程主存储库中创建分支而无需存储库的本地克隆?

存储库足够大,克隆副本只是为了制作和推送分支是非常浪费的(大约20分钟),特别是由于程序和功能原因由自动化系统制作分支,并且它不需要内容存储库本身.

mu *_*u 無 5

不基于现有分支,但您可以使用全新的无关存储库推入分支.请尝试以下测试说明

为测试创建原始仓库

cd ~/Desktop/test
mkdir original_repo && cd original_repo 
git init && touch testfile && git add . && git commit -m "master repo"
cd ..
Run Code Online (Sandbox Code Playgroud)

创建一个新的空仓库

mkdir hacky_repo && cd hacky_repo
git init && touch init && git add . && git commit -m "empty new repo"
Run Code Online (Sandbox Code Playgroud)

将原始仓库作为远程添加到此仓库

git remote add original ../original_repo/
Run Code Online (Sandbox Code Playgroud)

现在将分支从这个回购推送到原始回购

git push original master:some_new_branch
cd ../original_repo
Run Code Online (Sandbox Code Playgroud)

如果现在你做了git branch- 你应该在你原来的回购中有新的分支.

$) git branch
* master
  some_new_branch
Run Code Online (Sandbox Code Playgroud)

这里的假设是您事先知道所有分支/分支命名空间都是空闲的.