2013年3月3日 星期日

git所維護的特殊符號參照



  • git當中所有的符號參照都可以使用 git symbolic-ref 指令來管理
  • git因為某些特殊目的所以維護了一些特別的符號參照,它們可以被用在任何可以使用"送交(commit)"的地方:
    1.  HEAD   
         HEAD永遠指向目前分支上最新的commit(送交)。當你修改分支時,HEAD就會被更新,指向該分支最新的commit(送交)。


    2.  ORIG_HEAD   
         在執行某些動作例如"merge(合併)"或是"reset(重設)"時,在執行之前,會將前一個版本的HEAD紀錄在ORIG_HEAD。
        可以使用ORIG_HEAD來回復至前一個版本或者是進行比較


    3.  FETCH_HEAD
       
    當使用"遠端容器(Remote Repo)"時,git fetch指令會記錄從 .git/FETCH_HEAD檔案中所有分支的HEAD。
         FETCH_HEAD就是你抓取的上一個分支的HEAD,並且僅在抓取的指令之後有效。使用這個符號參照,你可以找到你使用 git fetch指令所抓取的HEAD,並且不用指定分支名稱。


    4.  MERGE_HEAD
        當合併在執行時,另一個分支的HEAD會被暫時的紀錄在MERGE_HEAD之中。
        換句話說:  MERGE_HEAD會指向要被合併到目前HEAD的送交物件。


    [Note]
           雖然可以使用上述的符號參照來建立自己的分支,但不建議這麼做!!

沒有留言:

張貼留言