git - 如何在我的原始存储库中设置遥控器,就像它被克隆一样?
问题描述
我在本地创建了一个 Git 存储库并向其中提交了一个文件:
$ mkdir blarg && cd blarg
$ git init
Initialized empty Git repository in /home/myuser/tests/blarg/.git/
$ echo a line > test.txt
$ git add .
$ git commit -m "initial commit"
[master (root-commit) f47ef6d] initial commit
1 file changed, 1 insertion(+)
create mode 100644 test.txt
我希望我的服务器托管这个存储库,所以我在那里创建了一个空的存储库并配置了对它的访问(这部分工作正常)。我可以将此存储库设置为本地存储库中的远程存储库并推送到它:
$ git remote add --track master origin https://git.example.net/repos/blarg.git
$ git remote -v
origin https://git.example.net/repos/blarg.git (fetch)
origin https://git.example.net/repos/blarg.git (push)
$ git push origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 216 bytes | 216.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://git.example.net/repos/blarg.git
* [new branch] master -> master
$ git pull
Already up to date.
$ git status
On branch master
nothing to commit, working tree clean
$ git log --oneline
f47ef6d (HEAD -> master, origin/master) initial commit
这一切似乎都按预期工作。但是,在将这个存储库从服务器克隆到一个新目录后,克隆的存储库中的git status
消息略有不同,并且git log
还显示了比原始存储库中的多一个 ref:
$ cd ..
$ git clone https://git.example.net/repos/blarg.git blarg2
Cloning into 'blarg2'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done
$ cd blarg2
$ git status
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
$ git log --oneline
f47ef6d (HEAD -> master, origin/master, origin/HEAD) initial commit
请注意,git 只打印“你的分支是最新的'origin/master'。” 在克隆的存储库中,并且那里的日志提到origin/HEAD
.
发生了什么事,如何调整我的原始存储库以使其表现得像克隆的一样?
解决方案
你的分支是最新的'origin/master'
这意味着该分支已设置为master
在origin
. 您可以像这样在原始本地存储库中进行设置:
git branch --set-upstream-to=origin/master
看到这个。
f47ef6d (HEAD -> master, origin/master, origin/HEAD) 初始提交
origin/HEAD
指向master
此处的提示,因为本地 repomaster
将默认用作分支,origin
即命令将使用的分支,例如git log origin
未指定分支。
您可以像这样在原始存储库中进行设置:
git remote set-head origin master
看到这个,正如daChihan所提到的。
推荐阅读
- psql - 关于postgreSQL命令的一个问题
- python-3.x - 在python中将struct_time转换为String有错误
- html - Put elements of a div in a css box
- html - Bootstrap Grid Layout 在 Extra Small 上显示 ComboBox 而不是多个按钮
- ios - 滚动到特定的标题视图
- c# - 如何从组合框中获取文本,如项目 [1]
- java - 如何将对象的特定字段映射到另一个对象?
- javascript - 在 Javascript 的 document.ready() 函数中未获取 Base64 编码数据
- java - 写入 JsonObjectRequest 中的布尔值
- angular - PrimeNG - TreeNodes [] 已填充但为空 TreeTable(Angular 6)