環境: win7 64位
軟件准備:
版本號可以無視
1.Git-1.9.2-preview20140411
2.GitExtensions24703SetupComplete
3.vs2010(非必要)
4.vbox
5.debian安裝光盤DVD第一張
git服務器實際上就是一個linux文件服務器.通過ssh這個協議來處理的.
各種windows架設都太麻煩而且會破壞一些已有的配置.我對linux又比較熟悉,所以還是架設linux好了.
搞清楚這一點,下面就很好辦了.
要解決三個問題: 服務器架設及配置, 客戶端程序安裝及配置, 虛擬機和宿主機互訪問題(通常是宿主機訪問虛擬機)
一 服務器架設及配置
1.安裝debian在虛擬機vbox中
locale選擇英文, 最好斷開網絡安裝,其它默認就好.
2.配置debian
安裝git-core
apt-get install git-core
生成帳號git及創建必要目錄
adduser git mkdir ~/.ssh
在git的home里創建一個中央倉庫
mkdir /home/git/foo.git cd /home/git/foo.git git --bare init
二 虛擬機和宿主機互訪問題
使用默認的NAT方式 配置
端口轉發
本機的2200端口
子系統的22端口
訪問形式
ssh git@127.0.0.1:2200
即可訪問虛擬機的22端口的ssh服務了
三 客戶端程序安裝及配置
1.先安裝git, git-extentions,
如果提示缺失cygpath.exe還要安裝cygwin,把cygpath.exe和cygwin1.dll復制到git bin的目錄下.
2.生成密鑰
ssh-keygen
得到~/.ssh下的兩個文件
id_rsa 私鑰(保存在本地,不要重命名也不要移動)
id_rsa.pub 公鑰
3.上傳公鑰到服務器
打開git bash
scp ~/.ssh/id_rsa.pub git@127.0.0.1:2200
ssh git@127.0.0.1:2200
登入虛擬機后:
cat id_rsa.pub >> ~/.ssh/authorized_keys
4. 配置git-extentions
ssh使用openssh
5. url推送方式
ssh://git@127.0.0.1: 2200/home/git/test2.git
2200即為剛剛設置的本機端口
收尾: 修改虛擬機的訪問方式只能通過密鑰.
/etc/ssh/sshd_config
PasswordAuthentication no
問題: vs2010默認推送的是遠程而不是url...困擾中.
2014.5.29 解決了:
遠程為管理遠程里默認配置的地址,而url地址為不經常使用而自定義的地址
