內容標題
使用者設定 (強制)
現在先一起看一下使用者的設定吧!
首先,既然是版本控制器,當然要有其作者資料以及創作時間。後者不需要使用者設定,但前者需要使用者手動補上。首先,我們一樣打開 terminal。設定使用者不須在特定的地方,因此可以在任意位置。
使用者名字
每當一個紀錄要交給 git 管理時一定要知道是誰負責的,因此名字不可或缺。設定名字的方法是:$ git config --global user.name "[yourname]"後面的
[yourname]是要填上自己的暱稱。例如說我叫 Jin Tsheng Wu,那我就要輸入:$ git config --global user.name "Jin Tsheng Wu"信箱
關於信箱的地方也是要輸入的喔。語法如下:$ git config --global user.email "[yourname]"例如:
$ git config --global user.email "HandsomeBoy@gmail.com"
上述兩個設定隨時都可以更改喔,語法都是一樣的。
那... 如果我今天把電腦借給別人,是不是又要把名字改成他,之後再換回來呢? 當然不用! 我們稍微看一下上面的語法有著
global,代表說是全部套用。但是今天想在某個特定的專案更改設定,但又不影響全部設定,我們就可以把global換成local!
環境設定 (非強制,個人喜好~)
環境設定有時候是因為有些預設的編輯不太熟悉等等,當然也可能懶的打字,所以設定簡寫。因此設置好環境,有時候會對自己的工作效率很有幫助!
編輯器
讀者可能有個疑問:編輯器 跟 git 又有什麼恩怨情仇的?這可很重要啊!!畢竟 版本控制器 需要留下紀錄才能上傳 (當然也是有方法可以不用啦)。但如果使用者忘記留下,git 則會跳出預設編輯器,讓使用者留紀錄。然而頭大的地方便是 git 的預設編輯器是大名鼎鼎的 vim,是款不直覺的編輯器,沒用過的人根本不知道怎麼離開 (國外知名網站上有超過兩百萬的人都想問這個問題XD),因此才要設定好,防止此悲劇😔。語法如下:$ git config --global core.editor [editor]例如說我想要用 vs code 當我的預設編輯器,則輸入:
$ git config --global core.editor code但 vs code 不是輸入就有了,需要另外安裝,但 vim 人人都有,因此我們還是要認識一下他! 另外,常見的編輯器有 atom、emacs、nano 和 Notepad++ 等等 (除了 nano,皆需另外安裝)。
縮寫
有時我們可以節省以較短的指令,來代替較長的指令。語法如下:$ git config --global alias.[abbrev] [command]前面的
[abbrev]是指 想要的縮寫,而後面的[command]是指原本的 git 指令。例如我們後面會用到的status指令,可以設定成sts就好。語法:$ git config --global alias.sts status這樣
git status就可以只打git sts了!那可不可以把
git status直接縮寫成sts就好了? 當然可以! 只不過並不是在 git 裡設定的,需要用到其他方法。之所以git要留著,就是要讓 shell 知道語法是從 git 的指令庫來的,要是少了git,shell 可無法找到 git 存縮寫的地方啊!
vim 的操作
首先我們來講講關於 vim 的模式。normal 跟 insert 跟 visual。今天我們只認識前面兩種就行!另外,vim 是不可用滑鼠來做選擇的。一般來說,想要用 vim 編輯檔案,就需要在 terminal 輸入 (必須在那個檔案的資料夾底下) :
$ vim [filename]
例如我想編輯 test.cpp,那我就要輸入:
$ vim test.cpp
接著會看到下面的介面 (可能有些微的差距)

insert
現在我們進入到的是 normal 模式,如果我們想要進入 insert 模式的話要按鍵盤上的 i。此時左下角就會出現 insert 的字樣。接下來就可以開始編輯。

如果要移動鼠標的話,可以用上下左右鍵。當編輯完成時,我們必須退回 normal 模式輸入指令來儲存。按下 esc 就可以退回 normal 模式,這時就不能再輸入東西。normal
現在我們要來將更改玩的資料做儲存。在 normal 模式下,輸入 " : " 的這個符號就可以開始輸入指令。此時左下角就會出現 :。

如果要儲存的話就要輸入 w 之後按下 enter 就完成了。另外如果要離開,輸入 q 就可以離開了!當然如果想要儲存並離開的話,可以輸入 wq 喔!同樣按 esc 就可以取消輸入。
整理圖表

進階指令
我會列一些比較常用的指令,如果下定決心要用 vim 的話可以認識一下~但這裡就不帶大家一起了 (有 : 代表要輸入 : 才能操作)。
| 指令 | 效果 |
|---|---|
| o | 在下一行插入 |
| O | 在上一行插入 |
| a | 在尾端插入 |
| A | 在開頭插入 |
| gg | 到達最開頭 |
| [number]gg | 到達 [number] 行 |
| G | 到達最尾端 |
| [number]dd | 文內剪下 [number] 行 (剪下的內容只能在 vim 做使用) |
| [number]yy | 文內複製 [number] 行 (複製的內容只能在 vim 做使用) |
| p | 貼上 (只能貼上在 vim 複製或剪下的內容 |
還有很多很多的指令供大家使用,暫時就先不列了。點我看更多指令
一次設定 Git
剛剛有提到說,我們設定的 git 是要由 git 指令觸發,但那些設定檔案又存在哪呢?答案是在 .gitconfig 裡。基本上這個檔案是隱藏檔,且必須設定在 home directory。這裡就先不介紹 home directory 是什麼了,如果要開啟這個檔案必須要先決定編輯器開啟,指令如下:
$ [editor] ~/.gitconfig
這裡我使用 vim,所以是
$ vim ~/.gitconfig
稍微解釋一下,~ 代表是在 home directory,而 / 代表是 目錄底下,所以 ~/ 代表是 在 home directory 的目錄底下。開啟後會看到像下圖:

這裡我們可以看到 [user], [core], [alias],這些都是我們的設定檔,所以如果要更改,也可以在這裡更改!
小結語
今天帶大家設定了一些 git 的環境並瞭解 vim 要怎麼操作,但我們有很多關於 vim 的東西還沒有提到。事實上vim 真的是很強大的編輯器,不過這些強打的功能就留給大家慢慢摸索了~ 明天就正式帶大家操作 git 了!
參考資料
- 為你自己學 Git (高見龍 著)
- missing semester from MIT
- vim 指令

![[ 筆記 ] API 文件 範例](https://static.coderbridge.com/img/krebikshaw/cf279e59c46948e7ac69dce2de98f5c0.jpg)
