參考《Git權威指南》安裝整理,圖書配套網址參見【1】
1. Cygwin下安裝配置Git
1. 在Windows下安裝配置Git有2種不同的方案
(1)msysGit, (2)Cygwin下使用Git。
作者推薦在Cygwin下使用Git,因為在Cygwin下很容易獲得與Git使用相關的一些開源工具。而msysGit不能滿足這個需求。
2. 首先要安裝Cygwin
初次安裝Cygwin時建議全部安裝,這樣就不會出現一些缺少模塊的錯誤,而且Git也會被一同安裝上,新手使用,比較省心。
3. 忽略文件權限的可執行位 (P39)
通過下面的配置可禁止Git對文件權限的跟蹤
$ git config --system core.fileMode false
上面的命令修改的是 D:\cygwin64\etc 下的 gitconfig文件,也就是Git的system的配置文件。
4. Git中文支持
Cygwin下Git對中文支持非常好,除了下面一點:文件名中含中文的文件,在工作區,查看狀態,查看歷史更改概要等,文件名中的中文不能正常顯示。
解決辦法:
$ git config --global core.quotepath false
上面的命令修改的是 D:\cygwin64\home\msi 下的.gitconfig 文件,也就是Git在該用戶下的全局配置文件。
5. Cygwin下Git訪問SSH服務
以公鑰認證方式訪問SSH協議的Git服務器時無需輸入口令,而且更安全。(訪問HTTP協議的Git服務器時,每次都需要輸入口令。)
然而書中的內容不太明確。可以參考【2】【3】的方法。
(1)創建SSH Key
打開cygwin后,默認是在home目錄“~”下。使用cygpath命令可以查看~目錄對應的windows下的路徑
$ cygpath -w ~/ D:\cygwin64\home\msi\
所以ssh-keygen命令生成的.ssh目錄是在 D:\cygwin64\home\msi\ 目錄下面。
$ ssh-keygen -t rsa -C "youremail@163.com"
一路回車,使用默認值即可,也無需設置密碼。在用戶主目錄里找到.ssh目錄,里面有id_rsa和id_rsa.pub兩個文件,這兩個就是SSH Key的秘鑰對,id_rsa是私鑰,不能泄露出去,id_rsa.pub是公鑰。
(2)設置GitHub SSH Keys。
登陸GitHub->Settings->“SSH Keys”,然后,點“Add SSH Key”,起個Title,在Key文本框里粘貼id_rsa.pub文件的內容,點“Add Key”。
(3)創建Repository
注意repository的名字要與本地Git庫的名字一致。其他保持默認即可。
(4)根據GitHub給出的提示,可以從這個倉庫克隆出新的倉庫,也可以把一個已有的本地倉庫與之關聯,然后,把本地倉庫的內容推送到GitHub倉庫。
這里,把本地倉庫的內容推送到GitHub倉庫。
$ git remote add origin git@github.com:zhchnchn/learngit.git
然后,就可以把本地庫的所有內容推送到遠程庫上:
$ git push -u origin master
注意,在這一步會跳出一個問題讓你選擇,因為這是首次連接SSH服務器,還未建立對該SSH服務器的信任。選yes即可。可以看到,選yes之后,將GitHub的SSH服務器添加到了本地的known hosts中。
$ git push -u origin master The authenticity of host 'github.com (192.30.252.131)' can't be established. RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'github.com,192.30.252.131' (RSA) to the list of known hosts. Counting objects: 3, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 268 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To git@github.com:zhchnchn/learngit.git * [new branch] master -> master Branch master set up to track remote branch master from origin.
從現在起,只要本地作了提交,就可以通過命令:
$ git push origin master
把本地master分支的最新修改推送至GitHub。
2. Win7下安裝配置Git
2.1 msysGit
2.1.1 下載
http://msysgit.github.io/
當前版本是Git-1.9.4-preview20140929
2.2.2 安裝
1. 安裝過程中,詢問是否修改環境變量,選擇“Use Git Bash Only”. 即只在msysGit提供的Shell
(NOTE: 這個步驟最好選擇第二項“Use Git from the Windows Command Prompt”, 這樣在Windows的命令行cmd中也可以運行git命令了。這樣會對以后的一些操作帶來方便,
比如Win7下安裝配置gVim(http://www.cnblogs.com/zhcncn/p/4151701.html))
2. 配置行結束標記,保持默認“Checkout Windows-style, commit Unix-style line endings”.
2.2.3 中文亂碼問題解決方法
1. ls 不能顯示中文目錄
解決辦法:在git/git-completion.bash中增加一行【4】:
alias ls='ls --show-control-chars --color=auto'
另外,Git Shell 不支持 ls -l的縮寫形式ll,也為其添加一個alias
alias ll='ls -l'
2.2.4 運行 Git 前的配置
1. 配置你個人的用戶名稱和電子郵件地址
$ git config --global user.name "xxx" $ git config --global user.email xxx@example.com
2. 配置GitHub SSH
(1)首先使用 ssh-keygen 生成 SSH 密鑰
$ ssh-keygen -t rsa -C "youremail@163.com"
(2)參考上面Cygwin下的配置方法,配置Github SSH。
2.2 TortoiseGit
2.1.1 下載
http://download.tortoisegit.org/tgit/
當前版本是TortoiseGit-1.8.11.0-64bit.
如需簡體中文版,應同時下載 zh_CN 語言包:TortoiseGit-LanguagePack-1.8.11.0-64bit-zh_CN.msi.
注意,語言包也要相應的為64位的。
2.2.2 安裝TortoiseGit
1. 在“Choose SSH Client”選擇界面,保持默認選擇“TortoiseGitPlink...”
2. 在“Custom Setup”界面,保持默認值,Location改為D盤
2.2.3 安裝中文語言包
雙擊安裝完成即可。
2.2.4 設置
在桌面空白處點擊右鍵,右鍵菜單中可以看到已經加入了TortoiseGit快捷鍵
1. 選擇“Settings”,進入“Settings-TortoiseGit”界面,選擇“General”選項卡,設置本機器的 git 路徑(一般會默認設置好的,比如我本地Git路徑D:\Program Files (x86)\Git\bin就默認已經設置好了),並選擇語言為 中文(簡體);
2. 選擇“Network”選項卡,查看SSH路徑。SSH 默認已設置好了(D:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe )
3. 選擇“Git”選項卡,查看用戶名、郵箱,發現也已經被默認設置好了。
2.2.5 使用TortoiseGit下載代碼
1. 在目標目錄下點擊右鍵,選擇 “git 克隆”, 添加版本庫地址 URL(比如https://github.com/zhchnchn/VimConfig.git)。
NOTE:必須是https類型的url。SSH類型的url會克隆失敗。
2. 點擊 ok 即可下載一份新版本庫。
2.3 VS2013集成Git
1. 可以通過VS2010自帶的擴展管理器安裝。
2. 在 vs 菜單中點擊“工具”/“擴展管理器”,在右上角搜索框中直接輸入“Git”搜索,選擇Git Source Control Provider”,然后點擊“Download”,下載完成后直接安裝,安裝后重啟 VS2010 即可。
3. 關於該插件如何使用,請參考【7】
References
【1】Git權威指南 (http://www.worldhello.net/gotgit/index.html)
【2】廖雪峰Git教程-遠程倉庫(http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374385852170d9c7adf13c30429b9660d0eb689dd43a000)
【3】廖雪峰Git教程-添加遠程庫(http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013752340242354807e192f02a44359908df8a5643103a000)
【4】git windows中文目錄亂碼問題解決(http://blog.chinaunix.net/uid-9789774-id-3080448.html)
【5】msysgit + TortoiseGit:在 windows 上安裝配置版本控制工具 Git 圖形化使用(http://lzw.me/a/msysgit-tortoisegit-win-git.html)
【6】Win7上Git安裝及配置過程(http://blog.chinaunix.net/uid-25806493-id-3319781.html)
【7】Git Source Control Provider(http://gitscc.codeplex.com/documentation)