我的 git config --list 看起来像这样
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=git@bitbucket.org:username/project1.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
include.path=/var/www/__/subfolder/
问题1:我可以为多个项目添加多个远程来源吗?
问题2:如果是,那么在这里添加后如何管理多个回购? (或如何运行添加提交拉动并推送每个仓库)
答案 0 :(得分:1)
我遇到了同样的问题并在此处发布了解决方案。
是的,你可以运行多个项目,为此你只需要从同一个地方运行git clone命令,git将负责其余的工作,即创建条目并在新的子目录中创建repo克隆。
我最好的选择是--concatenate--命令并一起运行,如果你想从同一个地方运行所有东西..
例如,试试这个:
$ cd project1/; git command 1; git command 2; cd..;
答案 1 :(得分:0)
您是否正在其中一个本地git存储库中运行git config --list
(git config是全局存在,系统级还是本地存储库级)?是否为您填充了git config的内容,或者您自己添加了这些内容?
我不确定我是否完全理解这个问题是什么,但听起来你想要有四个完全独立的本地git存储库,每个存储库都是从一个单独的bitbucket项目克隆的。
假设情况如此,那么每个人都应该有一个不同的本地存储库。你可以这样设置:
$ git clone git@bitbucket.org:username1/project1.git
$ git clone git@bitbucket.org:username2/project2.git
$ git clone git@bitbucket.org:username3/project3.git
$ git clone git@bitbucket.org:username4/project4.git
这将为您提供以下目录结构:
.
├── project1/
│ ├── .git/
│ └── ... (project contents)
├── project2/
│ ├── .git/
│ └── ... (project contents)
├── project3/
│ ├── .git/
│ └── ... (project contents)
└── project4/
├── .git/
└── ... (project contents)
如果您进入任何这些目录并运行git remote -v
,您将看到每个目录都有一个远程被叫起源并指向不同的仓库。无论何时克隆git存储库,每次都会自动为您创建一个远程调用源,并指向您从中克隆的存储库。
$ cd project1/
$ git remote -v
origin git@bitbucket.org:username1/project1.git (fetch)
origin git@bitbucket.org:username1/project1.git (push)
$ cd ../project2/
$ git remote -v
origin git@bitbucket.org:username2/project2.git (fetch)
origin git@bitbucket.org:username2/project2.git (push)
或者,如您所示,您可以使用git config --list
:
$ cd project2/
$ git config --list
...
remote.origin.url=git@bitbucket.org:username2/project2.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
...
推拉很容易:
$ cd project3/
$ git pull
$ git push origin master