原文:git尋根——^和~的區別

一. 引子 在git操作中,我們可以使用checkout命令檢出某個狀態下文件,也可以使用reset命令重置到某個狀態,這里所說的 某個狀態 其實對應的就是一個提交 commit . 我們可以把一個git倉庫想象成一棵樹,每個commit就是樹上的一個節點。家家都有一本自己的祖譜。祖譜記錄了一個家族的生命史,它不僅記錄着該家族的來源 遷徙的軌跡,還包羅了該家族生息 繁衍 婚姻 文化 族規 家約等歷 ...

2013-05-14 18:47 13 11783 推薦指數:

查看詳情

git尋根——^和~的區別(轉)

一. 引子 在git操作中,我們可以使用checkout命令檢出某個狀態下文件,也可以使用reset命令重置到某個狀態,這里所說的“某個狀態”其實對應的就是一個提交(commit). 我們可以把一個git倉庫想象成一棵樹,每個commit就是樹上的一個節點。家家都有一本自己的祖譜。祖譜記錄 ...

Mon Nov 16 06:16:00 CST 2015 2 3106
Gitgit rebase和merge的區別

一、git merge和git rebase的原理 git merge和git rebase都是用來合並兩個分支的。 git merge b:將b分支合並到當前分支 git rebase b:也是把 b分支合並到當前 ...

Thu Apr 01 18:46:00 CST 2021 0 646
git merge和git rebase的區別

在分支合並時,有兩種方式:git merge 和git rebase 舉個例子,當前有一個master分支,日志信息如下: 現在在master分支上創建一個dev分支,然后在dev分支上進行兩次提交,添加dev1.txt,dev2.txt,日志信息如下: 同時在master分支 ...

Fri Apr 10 18:14:00 CST 2020 0 1001
git clone與git pull區別

從遠程服務器克隆一個一模一樣的版本庫到本地,復制的是整個版本庫,叫做clone.(clone是將一個庫復制到你的本地,是一個本地從無到有的過程)從遠程服務器獲取到一個branch分支的更新到本地,並更 ...

Sat Jan 04 05:36:00 CST 2020 0 1253
git log 與 git reflog 的 區別

git log: commit 的版本日志 包含提交的版本 操作者 日期 (方便查看commit的版本,但是版本回退后,使用git log 看不到回退版本號之后的版本記錄) commit ce0d69899b65fb22708f2f4ef48de11a05d0acc2Author ...

Fri May 18 07:49:00 CST 2018 0 3076
git rebase與git merge的區別

什么是 rebase? git rebase 你其實可以把它理解成是“重新設置基線”,將你的當前分支重新設置開始點。 這個時候才能知道你當前分支於你需要比較的分支之間的差異。 原理很簡單: rebase需要基於一個分支來設置你當前的分支的基線,這基線就是當前分支的開始時間軸向后移動到最新的跟蹤 ...

Mon May 25 22:58:00 CST 2020 0 628
git stash與git commit的區別

問題的出現 寫這篇文章的緣由是在工作中初次使用Git的時候遇到了一個奇怪的現象,即每次提交代碼的時候,如果沒有及時拉取代碼就會導致本地庫的代碼不是最新的,這樣自己修改代碼之后想要push到遠程倉庫的時候就會遭到拒絕,每次被拒絕以后我會先拉取代碼,然后再繼續push,這樣可以成功提交 ...

Tue Dec 17 23:09:00 CST 2019 0 2635
git add -A 和 git add . 的區別

git add -A和 git add . git add -u在功能上看似很相近,但還是存在一點差別 git add . :他會監控工作區的狀態樹,使用它會把工作時的所有變化提交到暫存區,包括文件內容修改(modified)以及新文件(new),但不包括被刪除的文件。 git add ...

Sat Sep 10 21:30:00 CST 2016 7 184284
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM