我是如何入門Git 續集)?

2021-08-10 06:25:34 字數 1825 閱讀 2121

這是篇是

《我是如何入門git?

我是如何入門git的?》的續集。

下面繼續,現在a.txt 內容是啥看一眼,

在黑黑的介面輸入cat a.txt,看到裡面的內容是222.

那麼現在想把修改的內容撤銷,就是想把222的內容返回到原先的111.

首先還是看一下git log的內容吧。以前都是直接輸入 git log 。也可以輸入git log --pretty=oneline,先是如下介面

6f2913368ac7265f89b55f713ab089213a61dafb (head -> master) v2

bea06b4739deea7b25d5eb519698985e31994538 v1

222變成111就是要把

(head -> master)從v2那行挪到v1那行。
於是輸入指令git reset --hard bea06,於是顯示

$ git reset --hard bea06

head is now at bea06b4 v1

好我們看看.git資料夾有什麼變化,只有index和orig_head同一時刻發生了變化。

然後輸入git log --pretty=oneline,顯示如下:

bea06b4739deea7b25d5eb519698985e31994538 (head -> master) v1

然後我發現 index又變了(這個是個疑問)!!

然後我輸入cat a.txt  ,發現內容是111.

現在又想把111變成222。這個我現在還不會。因為log裡面的內容只是剩下v1的內容了。呵呵 我會了。因為我的嘿嘿的介面一直沒有關閉(如果關了咋辦?)。所以我輸入

git reset --hard 6f29133,果然成功了,顯示:

$ git reset --hard 6f29133

head is now at 6f29133 v2

看下內容,輸入cat a.txt,內容是2.

然後輸入git log 內容是啥呢?

估計是v1和v2都有。因為head已經是v2了。

輸入 git log --pretty=oneline看一下:

$ git log --pretty=oneline

6f2913368ac7265f89b55f713ab089213a61dafb (head -> master) v2

bea06b4739deea7b25d5eb519698985e31994538 v1

呵呵,從時間上看index又修改了。啥時候改的啊。

呵呵又做了幾個實驗,用git reset指令把v2變為v1或者把v1變為v1,那麼就會有index和orig_head 同時修改。

用git reset 指令吧v1變為v2那麼.git資料夾下index和orig_head 同時修改。

可以看出上面的head跳來跳去的操作,只是把index和orig_head給變化了。

輸入指令把head 弄成v1.如下:

$ git reset --hard bea06

head is now at bea06b4 v1

看看orig_head裡面是啥?用notepad++一看竟然是bea06b4739deea7b25d5eb519698985e31994538

而index資料夾裡面是二進位制檔案,目前不想深究裡面是什麼內容。

我是如何學習git

一開始學習git的時候,網上的git教程很多,看得人眼花繚亂,不知道如何下手。現在對git已經很熟悉了,回過頭來總結一下學習方法。一般官方文件是最全面,但是不一定適合快速上手。我們可以學習一些快速上手的教程,這些教程沒有官方文件那麼全面,但是可以學習到最常用的操作,適合入門。入門之後,如果還想高階,...

git 我是大白,我是猿

假如我們現在在dev分支上,剛開發完專案,執行了下列命令 git add git commit m 提交的備註資訊 git push u origin dev想將dev分支合併到master分支,操作如下 1 首先切換到master分支上 git checkout master2 如果是多人開發的話...

置頂 Git入門之一 Git是神馬?

乙個開源的分布式版本控制系統,可以有效的高速的控制管理各種從小到大的專案版本。他的作者就是大名鼎鼎的linux系統創始人linus。先看看集中式。簡單說來,集中式就是把版本庫集中放在某個 伺服器上 可以是區域網 然後每個人每次要使用時跟伺服器進行通訊,這樣的缺點很明顯,一旦伺服器掛掉,就悲催了,不用...