我的Git安装实践 20190719
一、linux
yum install git
# 生成公私钥。三次提示输入直接回车即可,将在/root/.ssh下生成文件:id_rsa id_rsa.pub
ssh-keygen -t rsa -C "email@example.com"
ls ~/.ssh
# 将公钥内容(id_rsa.pub)放到git服务器上
# 配置
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
git config --global --list
ls ~/.gitconfig
#/root/.gitconfig
cat ~/.gitconfig
#[user]
#name = Your Name
#email = email@example.com
# 下例为两个git服务器的账号
cat >> ~/.ssh/config <<EOF
Host git.example.com
HostName git.example.com
Port 30022
User username
IdentityFile ~/.ssh/id_rsa
Host github.com
User github_username
IdentityFile ~/.ssh/id_rsa_second
EOF
cat ~/.ssh/config
# 测试连接git服务器,输入yes后,将会生成.ssh/known_hosts文件并增加一行git服务器域名ip等信息
ssh -T git@git.example.com
# 增加参数-v调试查看错误详情
ssh -vT git@git.example.com
二、windows
OS:win10
安装清单
- Git
- TortoiseGit
- Git Extensions
- 在VS中安装Git Source Control Provider
2.1、安装
下载
Git https://git-scm.com/download/win
TortoiseGit https://tortoisegit.org/download/ 下载for 64-bit Windows版本和Language Packs
Git Extensions:http://gitextensions.github.io/ 点击download跳转到https://github.com/gitextensions/gitextensions/releases/tag/v3.1.1
安装Git
勾选Git Bash Here
,Notepad++作为默认编辑器(default editor)
,Https transport方式:OpenSSL
安装TortoiseGit
勾选OpenSSH,Git default SSH Client
,配置username、mail。
安装Git Extensions
勾选OpenSSH
安装Kdiff3(Merge和Diff工具)
如果上面没有自带安装kdiff3,则需要手动安装,便于合并冲突解决以及比较。
安装路径一般是 C:/Program Files/KDiff3/kdiff3.exe
右击任一文件夹空白处 > Git Extentions > Settings >
MergeTool路径 C:/Program Files/KDiff3/kdiff3.exe
MergeTool命令 "C:/Program Files/KDiff3/kdiff3.exe" "$BASE" "$LOCAL" "$REMOTE" -o "$MERGED"
Difftool路径 C:/Program Files/KDiff3/kdiff3.exe
Difftool命令 "C:/Program Files/KDiff3/kdiff3.exe" "$LOCAL" "$REMOTE"
如果在解决冲突时,发现进入Kdiff时弹窗让选择A/B/C路径,并且进入后主窗口Base路径为空,可检查上面的MergeTool命令,之前碰到Mergetool命令为"" "$BASE" "$LOCAL" "$REMOTE" -o "$MERGED"
时出现此问题。按上面的改即可,或者点一下右边的"建议"按钮。
2.2、配置
SSH生成公钥私钥
在C:\Users\username
下进入git bash控制台(右击空白处选择Git Bash或者在安装目录下找到git bash)。
执行生成公钥私钥命令(以下为示例邮箱),连续3个回车,不需要输入密码,生成文件:id_rsa和id_rsa.pub。
ssh-keygen -t rsa -C "username@example.com"
添加公钥(id_rsa.pub内容)至gitlab或github
配置host、端口、账号及私钥路径
在C:\Users\yourname\.ssh
目录下新增名为config
的文件。
默认端口为22,根据实际情况填写,以下示例Port为30022。
可以配置多个git服务器的账号,以下示例有两个git账号,一个是自建gitlab,另一个是github账号。
Host git.example.com
HostName git.example.com
Port 30022
User username
IdentityFile ~/.ssh/id_rsa
Host github.com
User github_username
IdentityFile ~/.ssh/id_rsa_second
测试连接git服务器
# 测试连接git服务器,输入yes后,将会生成.ssh/known_hosts文件并增加一行git服务器域名ip等信息
ssh -T git@git.example.com
# 增加参数-v调试查看错误详情
ssh -vT git@git.example.com
如果连多个git服务器,比如github,也执行一次ssh -T git@github.com以便自动在.ssh/know_hosts文件增加此git服务器内容。否则git clone时可能会出现以下问题:
The authenticity of host 'github.com (52.74.223.119)' can't be established.
提示输入 RSA key fingerprint
从自己的pc上复制公钥私钥到新pc时,在config文件增加相关内容后,执行一次ssh -T。
网友评论