为什么 "git push" 在 "git push origin --delete BRANCHNAME" 之后起作用?
Why does "git push" work after doing "git push origin --delete BRANCHNAME"?
有时我想删除远程分支然后再次推送,例如我在本地修改了一个已经推送的提交。 (别担心,如果我是唯一一个在那个分支上工作的人,我只会这样做)。
在我执行“git push origin --delete BRANCHNAME
”之后,我可以简单地在后面加上“git push
”。
如果分支已经被删除,为什么“git push
”实际上有效?
为什么我不需要再做一次“git push -u origin BRANCHNAME
”?
为了说明 larsks' ,这里有一个本地分支跟踪上游分支的回购协议:
C:\Users\vonc\prog\b2dpres>git br -avv
* prez 13a1c36 [origin/prez] 20150923
推送删除分支:
C:\Users\vonc\prog\b2dpres>git push origin --delete prez
To https://VonC@github.com/VonC/b2d.git
- [deleted] prez
这不会更改本地配置:
C:\Users\vonc\prog\b2dpres>git config --local --get-regexp branch.prez
branch.prez.remote origin
branch.prez.merge refs/heads/prez
也不删除本地分支:
C:\Users\vonc\prog\b2dpres>git br -avv
* prez 13a1c36 [origin/prez: gone] 20150923
(注意"gone")
一个简单的git push
就会知道要推送什么(本地当前分支prez
)在哪里(到origin
)和哪个分支(到它的跟踪分支origin/prez
)
C:\Users\vonc\prog\b2dpres>git push
Counting objects: 10, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (10/10), 763.97 KiB | 0 bytes/s, done.
Total 10 (delta 2), reused 1 (delta 0)
To https://VonC@github.com/VonC/b2d.git
* [new branch] prez -> prez
它在远程端重新创建分支。
有时我想删除远程分支然后再次推送,例如我在本地修改了一个已经推送的提交。 (别担心,如果我是唯一一个在那个分支上工作的人,我只会这样做)。
在我执行“git push origin --delete BRANCHNAME
”之后,我可以简单地在后面加上“git push
”。
如果分支已经被删除,为什么“git push
”实际上有效?
为什么我不需要再做一次“git push -u origin BRANCHNAME
”?
为了说明 larsks'
C:\Users\vonc\prog\b2dpres>git br -avv
* prez 13a1c36 [origin/prez] 20150923
推送删除分支:
C:\Users\vonc\prog\b2dpres>git push origin --delete prez
To https://VonC@github.com/VonC/b2d.git
- [deleted] prez
这不会更改本地配置:
C:\Users\vonc\prog\b2dpres>git config --local --get-regexp branch.prez
branch.prez.remote origin
branch.prez.merge refs/heads/prez
也不删除本地分支:
C:\Users\vonc\prog\b2dpres>git br -avv
* prez 13a1c36 [origin/prez: gone] 20150923
(注意"gone")
一个简单的git push
就会知道要推送什么(本地当前分支prez
)在哪里(到origin
)和哪个分支(到它的跟踪分支origin/prez
)
C:\Users\vonc\prog\b2dpres>git push
Counting objects: 10, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (10/10), 763.97 KiB | 0 bytes/s, done.
Total 10 (delta 2), reused 1 (delta 0)
To https://VonC@github.com/VonC/b2d.git
* [new branch] prez -> prez
它在远程端重新创建分支。