Git 安裝 總結
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
參考:
http://blogs.gaixie.org/tommy/?p=146
http://www.tsingfeng.com/2011/06/03/git%E5%AE%89%E8%A3%85%E4%BD%BF%E7%94%A8%E6%89%8B%E8%AE%B0/
http://www.oschina.net/question/234345_52673
這裡git的版本是Git-1.7.8-preview20111206
apache 服務的版本是 Git-1.7.8-preview20111206
烏龜版本 TortoiseGit-1.8.1.0-32bit.msi
裝好 msysgit以後,進入你的 git 安裝目錄 C:\Program Files\Git\libexec\git-core 下找到一個 git-http-backend.exe 檔案,雙擊執行一下,如果提示缺少一個 libiconv-2.dll 檔案,需要你手工將這個檔案從 C:\Program Files\Git\bin 目錄複製到 C:\Program Files\Git\libexec\git-core 目錄中。
安裝完成後 將 C:\Program Files\Git\bin下的 libiconv2.dll 和 libiconv2.dll 拷貝到 C:\Program Files\Git\libexec\git-core 目錄下
httpd.conf
檔案,預設是安裝在
C:\Program Files\Apache Software Foundation\Apache2.2\conf
目錄下,編輯這個檔案,在檔案的末尾加上下面的內容:
SetEnv GIT_PROJECT_ROOT C:/Users/Tommy/git
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAliasMatch \
"(?x)^/git/(.*/(HEAD | \
info/refs | \
objects/(info/[^/]+ | \
[0-9a-f]{2}/[0-9a-f]{38} | \
pack/pack-[0-9a-f]{40}\.(pack|idx)) | \
git-(upload|receive)-pack))$" \
"C:/Program Files/Git/libexec/git-core/git-http-backend.exe/$1"
<Directory "C:/Program Files/Git/libexec/git-core/">
Allow From All
</Directory>
新建目錄 C:\Users\Tommy\git
在這個目錄下執行git init --bare sandbox.git
初始化出版本庫
D:\Work>git clone http://127.0.0.1/git/sandbox.git
Cloning into 'sandbox'...
warning: You appear to have cloned an empty repository.
本地提交啥的到此都OK,下一次考慮和伺服器同步
$ mkdir myproject.git
$ cd myproject.git
$ git init --bare
這裡需要注意--bare引數,表示是要生成一個"乾淨"的倉庫,僅包含歷史程式碼不包含工作程式碼。如果是希望初始化一個已存在的程式碼庫,也可以類似如下命令替換最後一行git命令:
$ git clone --bare /path/to/my_project myproject.git
提交到遠端庫命令
git push origin master
gitweb 配置~~~~~~~msysgit 安裝包裡自帶 perl ,但是缺少 cgi.pm 模組, 需要從 CPAN 下載解壓縮後, 將 lib
下的檔案複製到 C:\Program Files\Git\lib\perl5\5.8.8
目錄下。
繼續修改 apache 的 httpd.conf 檔案,在檔案最後再增加下面的內容:
[text]
view plain
copy
print
?
Alias /gitweb "C:/Program Files/Git/share/gitweb" <Directory "C:/Program Files/Git/share/gitweb/"> AddHandler cgi-script .cgi <Files ~ "\.cgi$"> Options +ExecCGI </Files> AllowOverride None Order allow,deny Allow from all DirectoryIndex gitweb.cgi</Directory> |
修改 gitweb.cgi 第一行, 使用 msysgit 中自帶的 perl
[text]
view plain
copy
print
?
#!C:/Program Files/Git/bin/perl |
修改 git 命令的位置
[text]
view plain
copy
print
?
our $GIT = "C:/Program Files/Git/bin/git"; |
修改我們 git 倉庫的位置, 注意, 如果你的倉庫在 c:\Users\Tommy\git
目錄, 應該按照下面的寫法
[text]
view plain
copy
print
?
our $projectroot = "/c/Users/Tommy/git"; |
還需要在 C:/Program Files/Git/
目錄下建立一個 tmp 目錄。
重起 apache ,開瀏覽器,訪問 http://localhost/gitweb
不知為什麼,通過 msysgit 裡自帶的 perl 在 apache 中執行 gitweb 速度很慢,但我直接通過下面的命令執行 gitweb.cgi
卻很快
[text]
view plain
copy
print
?
c:\Program Files\Git\bin>perl.exe "c:\Program Files\Git\share\gitweb\gitweb.cgi" |
所以這裡不建議配置 gitweb,只供參考。
git config --global user.name "Your Name"
git config --global user.email [email protected]