msysGit
msysGit 作為 Window 平台下的原生程序,Windows 平台下是 Git 客戶端的不二之選。msysGit 的安裝過程很簡單,幾步贅述了。這里僅技術一下安裝后的配置工作。
作為 Git 客戶端工具,如果連接不同的 Git 服務,配置過程可能會有所不同。由於通常會使用 Github 提供的 Git 服務,這里就以訪問 Github 所需要的配置為例。
msysGit --> Github
1 ■ 切換到存放密鑰的目錄
2 $ ls
3 id_dsa id_dsa.pub id_rsa id_rsa.pub known_hosts
4
5 ■ 查看公鑰內容,並將其復制到 github 中的 SSH Keys 數據庫中
6 Administrator@99638E047C1E4A0 ~/.ssh
7 $ vim id_rsa.pub
8
9 ■ 測試與 Github 服務器的聯通情況
10 Administrator@99638E047C1E4A0 ~/.ssh
11 $ ssh -T git@github.com
12 Hi kysnail! You've successfully authenticated, but GitHub does not provide shell
13 access.
14
15 ■ 配置全局用戶姓名
16 Administrator@99638E047C1E4A0 ~/.ssh
17 $ git config --global user.name "kysnail"
18
19 ■ 配置郵件名
20 Administrator@99638E047C1E4A0 ~/.ssh
21 $ git config --global user.email "TracingLife@gmail.com"
22
23 ■ 配置全局用戶名
24 Administrator@99638E047C1E4A0 ~/.ssh
25 $ git config --global github.user kysnail
26
27 ■ 配置 API Token
28 Administrator@99638E047C1E4A0 ~/.ssh
29 $ git config --global github.token e97cc93e4dcd9a0012d11300d9e2ec39
文件亂碼問題
通過 msysGit 檢出的文本文件,編碼類型為 UTF-8 without Signature ,客戶端的 vim 文件類型也設定為 UTF-8。
set encoding=utf-8
fileencoding=utf-8
fileencodings=ucs-bom,utf-8,chinese
但在終端下打開文件時仍然出現亂碼,
由此問題就引出了 vim 下與編碼問題有關的另一個參數 termencoding 。這個參數用於指定鍵盤產生和顯示能識別的字符編碼。由於默認中文環境下 cmd 的代碼頁為 936,而 termencoding 編碼缺省值就是控制台的代碼頁,從而造成了上面的亂碼問題。
如果你的系統沒有 UTF-8 的 locale 支持,或者你不想更改控制台的代碼頁,則可以使用下面的方式解決。
:let &termencoding = &encoding
:set encoding=utf-8
執行效果如下:
vim 幫助你完成編碼的轉換工作。
當然也可以在 _vimrc 中進行設定(注意:msysGit 自帶了一個 vim 編輯器):
let &termencoding = &encoding
set encoding=utf-8
fileencoding=utf-8
fileencodings=ucs-bom,utf-8,chinese
msysGit 終端不能列出中文目錄
修改 GIT_HOME/etc/bash_profile 文件,添加如下內容:
alias ls='ls -F --color --show-control-chars'
alias ll='ls -l'
還好,最新版本 1.7.9 已經為我們設置好此條目。
msysGit 終端不支持中文輸入
這是 msysGit 為了避免亂碼問題,而在終端上進行了文字編碼的轉換,只需要關閉這個轉換操作,就可正常顯示了。
# disable/enable 8bit input
set meta-flag on
set input-meta on
set output-meta off -> on
set ocnvert-meta on -> off
msysGit 不能顯示中文注釋
export LESSCHARSET=UTF-8