[問題] 請問 git中 origin/HEAD 指的是

作者: ireullin (raison detre)   2014-07-31 20:14:22
請問各位
我下命令 git branch -r 得到下面結果
origin/DevelopJsonComponent
origin/DevelopJsonComponent2
origin/HEAD -> origin/master
origin/developing2
origin/master
可是我一直不懂這個 origin/HEAD 是?
他是如何產生的呢?
為何會指向 origin/master?
好像不是所有的遠端都會有這個?
在遠端使用HEAD去指向一個遠端的branch有意義嗎?畢竟遠端只是儲存,沒有實際工作
請問這個可以刪掉嘛?
如果可以要如何做?
作者: filiaslayers (司馬雲)   2014-07-31 20:20:00
HEAD就是上次commit的進度,HEAD~1就是上一次
作者: ireullin (raison detre)   2014-07-31 20:24:00
謝謝^^ 但是這個我知道,只是不了解的是為何遠端上也有因為遠端上並沒有開發的行為,所以也沒有切換branch的概念而且我如我要push到master,是要對HEAD還是master呢
作者: lc85301 (pomelocandy)   2014-07-31 20:30:00
我認為是master,因為head可以指到remote 的其他branch
作者: filiaslayers (司馬雲)   2014-07-31 21:46:00
我是用master就是,沒試過headmaster是branch,head是指你commit的時間,兩個是不一樣的
作者: dearlove (初現)   2014-07-31 23:00:00
git checkout developing2 HEAD應該就會指過去這個了(?
作者: goldie (阿良)   2014-08-02 01:28:00
remote的HEAD指的是遠端default的branch也就是你在本地端git clone它時(不指定branch)git會自動幫你checkout的那個"default"的branch通常是master,除非remote git bare repo在當初在建的時候有用 git symbolic-ref HEAD refs/heads/{其他branch-name}改掉,改成指向其他的branch name。順帶一題, 若你想用git branch -d -r刪掉它是沒義意的。因為它只是個symbolic ref (類似指標 or symlink? XD)就跟你本地的HEAD一樣,指向著你目前checkout的branch name(囧)... 發完推文才發現已經有人回文了XDDD

Links booklink

Contact Us: admin [ a t ] ucptt.com