如何在windows下安装GIT
Windows下Git安装指南
参考《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 corefileMode false
上面的命令修改的是 D:\cygwin64\etc 下的 gitconfig文件,也就是Git的system的配置文件。
4 Git中文支持
Cygwin下Git对中文支持非常好,除了下面一点:文件名中含中文的文件,在工作区,查看状态,查看历史更改概要等,文件名中的中文不能正常显示。
解决办法:
$ git config --global corequotepath false
上面的命令修改的是 D:\cygwin64\home\msi 下的gitconfig 文件,也就是Git在该用户下的全局配置文件。
5 Cygwin下Git访问SSH服务
以公钥认证方式访问SSH协议的Git服务器时无需输入口令,而且更安全。(访问HTTP协议的Git服务器时,每次都需要输入口令。)
然而书中的内容不太明确。可以参考23的方法。
(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@163com"
一路回车,使用默认值即可,也无需设置密码。在用户主目录里找到ssh目录,里面有id_rsa和id_rsapub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsapub是公钥。
(2)设置GitHub SSH Keys。
登陆GitHub->Settings->“SSH Keys”,然后,点“Add SSH Key”,起个Title,在Key文本框里粘贴id_rsapub文件的内容,点“Add Key”。
(3)创建Repository
注意repository的名字要与本地Git库的名字一致。其他保持默认即可。
(4)根据GitHub给出的提示,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。
这里,把本地仓库的内容推送到GitHub仓库。
$ git remote add origin git@githubcom:zhchnchn/learngitgit
然后,就可以把本地库的所有内容推送到远程库上:
$ git push -u origin master
注意,在这一步会跳出一个问题让你选择,因为这是首次连接SSH服务器,还未建立对该SSH服务器的信任。选yes即可。可以看到,选yes之后,将GitHub的SSH服务器添加到了本地的known hosts中。
$ git push -u origin master
The authenticity of host 'githubcom (19230252131)' 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 'githubcom,19230252131' (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@githubcom:zhchnchn/learngitgit
[new branch] master -> master
Branch master set up to track remote branch master from origin
从现在起,只要本地作了提交,就可以通过命令:
$ git push origin master
把本地master分支的最新修改推送至GitHub。
2 Win7下安装配置Git
21 msysGit
211 下载
http://msysgitgithubio/
当前版本是Git-194-preview20140929
222 安装
1 安装过程中,询问是否修改环境变量,选择“Use Git Bash Only” 即只在msysGit提供的Shell
(NOTE: 这个步骤最好选择第二项“Use Git from the Windows Command Prompt”, 这样在Windows的命令行cmd中也可以运行git命令了。这样会对以后的一些操作带来方便,
比如Win7下安装配置gVim(http://wwwcnblogscom/zhcncn/p/4151701html))
2 配置行结束标记,保持默认“Checkout Windows-style, commit Unix-style line endings”
223 中文乱码问题解决方法
1 ls 不能显示中文目录
解决办法:在git/git-completionbash中增加一行4:
alias ls='ls --show-control-chars --color=auto'
另外,Git Shell 不支持 ls -l的缩写形式ll,也为其添加一个alias
alias ll='ls -l'
224 运行 Git 前的配置
1 配置你个人的用户名称和电子邮件地址
$ git config --global username "xxx"
$ git config --global useremail xxx@examplecom
2 配置GitHub SSH
(1)首先使用 ssh-keygen 生成 SSH 密钥
$ ssh-keygen -t rsa -C "youremail@163com"
(2)参考上面Cygwin下的配置方法,配置Github SSH。
22 TortoiseGit
211 下载
http://downloadtortoisegitorg/tgit/
当前版本是TortoiseGit-18110-64bit
如需简体中文版,应同时下载 zh_CN 语言包:TortoiseGit-LanguagePack-18110-64bit-zh_CNmsi
注意,语言包也要相应的为64位的。
222 安装TortoiseGit
1 在“Choose SSH Client”选择界面,保持默认选择“TortoiseGitPlink”
2 在“Custom Setup”界面,保持默认值,Location改为D盘
223 安装中文语言包
双击安装完成即可。
224 设置
在桌面空白处点击右键,右键菜单中可以看到已经加入了TortoiseGit快捷键
1 选择“Settings”,进入“Settings-TortoiseGit”界面,选择“General”选项卡,设置本机器的 git 路径(一般会默认设置好的,比如我本地Git路径D:\Program Files (x86)\Git\bin就默认已经设置好了),并选择语言为 中文(简体);
2 选择“Network”选项卡,查看SSH路径。SSH 默认已设置好了(D:\Program Files\TortoiseGit\bin\TortoiseGitPlinkexe )
3 选择“Git”选项卡,查看用户名、邮箱,发现也已经被默认设置好了。
225 使用TortoiseGit下载代码
1 在目标目录下点击右键,选择 “git 克隆”, 添加版本库地址 URL(比如https://githubcom/zhchnchn/VimConfiggit)。
NOTE:必须是https类型的url。SSH类型的url会克隆失败。
2 点击 ok 即可下载一份新版本库。
23 VS2013集成Git
1 可以通过VS2010自带的扩展管理器安装。
2 在 vs 菜单中点击“工具”/“扩展管理器”,在右上角搜索框中直接输入“Git”搜索,选择Git Source Control Provider”,然后点击“Download”,下载完成后直接安装,安装后重启 VS2010 即可。
3 关于该插件如何使用,请参考7
References
1Git权威指南 (http://wwwworldhellonet/gotgit/indexhtml)
2廖雪峰Git教程-远程仓库(http://wwwliaoxuefengcom/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374385852170d9c7adf13c30429b9660d0eb689dd43a000)
3廖雪峰Git教程-添加远程库(http://wwwliaoxuefengcom/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013752340242354807e192f02a44359908df8a5643103a000)
4git windows中文目录乱码问题解决(http://blogchinaunixnet/uid-9789774-id-3080448html)
5msysgit + TortoiseGit:在 windows 上安装配置版本控制工具 Git 图形化使用(http://lzwme/a/msysgit-tortoisegit-win-githtml)
6Win7上Git安装及配置过程(http://blogchinaunixnet/uid-25806493-id-3319781html)
7Git Source Control Provider(http://gitscccodeplexcom/documentation)
git
pull
如果pull时提示“You
asked
me
to
pull
without
telling
me
whichbranch
you
want
to
merge
with”,
说明本地有新建分支且已同步到服务器上,当从服务器下载代码时需要在本地config中配置该分支的merge信息。
配置时可以参考下面的例子:
$
git
config
branchmasterremote
origin
//master是分支名,origin是远程仓库名
$
git
config
branchmastermerge
refs/heads/master!
Step1 -安装copSSH
1将copSSH(basic edition 200)安装到路径 c:\SSH
2安装过程中写下SvcCOPSSH的密码,你可能永远不会用到,但写下也无伤大雅。
3启动copSSH,选择 开始->所有程序->copSSH->control panel;然后激活一个用户(假定为Administrator,选择Users->Add,下一步,选择一个用户,不要勾选Allow password authenticatin选项,点击forward,OK。
4其他关于public keys的事情无需操作,后面还会讲到。
Step2-配置copSSH
1选择路径-C:\SSH\etc ,在记事本中打开ssh_config和sshd_config(注意:两个文件有一个字母“d”的区别)
2ssh_config -删除Port前的#号,设置端口号,这里采用默认端口22
3sshd_config -保证端口号一致
4确定系统防火墙中该端口未关闭。(这一点很重要)
5重启系统
Step3-安装Putty
1重启之后,继续回来,现在可以安装Putty Installer了。
2导航至你的安装路径,通常为c:\program files\Putty
3打开PuttyGenexe
4选择生成密钥的长度4096
5在空白面板处不停地晃动鼠标(用于生成随机种子),直到生成结束。(不要关闭PuttyGen)
6来到路径c:\SSH\Home\Administrator\ssh\ (这个路径在你使用copSSH激活用户时会产生,根据你激活的用户名,选择相应的路径),创建文件authorized_keys (注意没有后缀名)
7打开PuttyGen,复制Public Key(公钥)到文件authorized_keys ,并保存
8在PuttyGen中,将Private Key(私钥)保存为private_keyppk,保存在同一目录下。-比如,我的保存目录为c:\SSH\Home\Administrator\ssh\private_keyppk
9现在目录下应该有两个文件了,authorized_keys 和 private_keyppk
10为了测试连接,运行puttyexe
11在打开的界面中输入IP 地址(本机可以为localhost)和端口号
12打开左侧的菜单,选择Connection-SSH-Auth,选择你的私钥文件,c:\SSH\Home\<user>\ssh\private_keyppk
13点击Open,就会打开终端,让你输入Login Name,输入Administrator(注意大小写)
14你会看到显示接受你的公钥(Accept Public Key),客户端登陆成功,登陆信息也会缓存起来。
Step 4-安装 msysgit和TortiseGIT
1安装msysgit的过程中一路下一步即可,假定你的路径为C:\msysgit
2安装TortiseGIT,完成之后
1)在任意路径点右键,选择TortiseGIT-Settings,设置gitexe的路径为c:\msysgit\msysgit\bin,即为msysgit的安装路径
2)在左侧菜单中选择Network,选择SSH Client为putty中的plinkexe(如我的路径为C:\Program Files\PuTTY\plinkexe)
3将几个GIT运行中需要的文件复制到SSH服务器目录,当客户端远程登陆上来以后需要执行这些文件,文件源路径为c:\msysgit\msysgit\Git\libexec\git-core ,要复制的文件包括gitexe, git-receive-packexe, git-upload-archiveexe and git-upload-packexe,将以上文件复制到C:\SSH\Bin
Step5-配置用户环境
1对于copSSH来说,其默认的$HOME环境为c:\Documents and Settings\<user>,GIT也将会在该目录下寻找authorized_keys 文件。当然,这是咱要避免的事儿,我们要将GIT的路径重定向到C:\SSH\Home\<user>\ssh 。
2选择路径C:\SSH\Home\Administrator\,打开bashrc文件,在# User dependent bashrc file下面加上这样一段:export HOME=/c/SSH/home/Administrator Shell Options,(注意不要有其他空格出现),然后选择保存。
3把该文件复制到用户目录下,如: c:\Documents and Settings\Administrator\
Step7-使用GIT和Plink
1打开路径C:\SSH\home\Administrator,创建文件夹myappgit
2 在该文件夹上点右键,选择git create repository here,勾选make it bare,服务器文件仓库创建成功。
3导航至路径c:\Program Files\PuTTY ,打开pageantexe,选择add key,将你的私钥(private_keyppk)加载上。
4然后右键选择 git clone,url设为ssh://administrator@127001:22/SSH/Home/administrator/myappgit ,如果clone成功,恭喜你,大功告成!
关于git的操作详见git的使用说明,这里推荐Pro Git 简体中文版,翻译的很不错。
注:在执行git clone时可能会报错(该错误在所参考的E文中未提及,把俺害得不轻),如果是关于某个dll文件的错(具体是哪个文件记不清了,遇到的朋友可以根据文件名,在msysigt目录下搜索即可找到),可以将该文件同样复制到C:\SSH\Bin下,然后就可以正常运行了。
假设运行msysbat选择1,即输入字符1
oschdir(r'D:\sms\Mms')
para=r'1'
cmdSvnUpdate = r'echo %s|msysbat'%para
handle = ossystem(cmdSvnUpdate)
其中para为选择相应命令要输入的字符
0条评论