基本设置

  1. 初始化用户名、邮箱以及颜色
1
2
3
4
5
git config --global user.name "suncheng"
git config --global user.email "157600408@qq.com"
git config --global color.ui true
# 配置 git 推送和检出时不修改换行符(crlf/lf)
git config --global core.autocrlf false
  1. 生成 ssh 密钥
1
ssh-keygen -t rsa -C "157600408@qq.com"

常用命令

  1. 初始化,添加修改,提交修改,推到服务器
1
2
3
4
git init
git add .
git commit -m "描述"
git push
  1. 拉取线上特定分支到本地
1
git checkout -b 本地分支名 origin/线上分支名
  1. 推送本地分支到线上
1
git push --set-upstream origin 本地分支名
  1. 换行符转换的问题
    • 设置自动转换选项 autocrlf
    • $ git config –local core.autocrlf true | input | false
      1. true 表示开启自动转换,迁入时将文件换行风格转换成 Unix 风格,迁出时根据本地系统确定是否转换成 CRLF
      2. input 表示迁入的时候将换行风格转换成 Unix 风格,迁出时不做处理。
      3. false 表示迁入迁出都不对换行风格进行处理
1
git config --local core.autocrlf input
  1. 清空 git 缓存
1
2
3
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
  1. 重新再次输入密码
1
git config --system --unset credential.helper
  1. 解决 github 被墙 – 设置 ssh 代理(终极解决方案)
  • 首先你等有一个科学上网工具,获取其开放端口号
  • 到 C:\Users\your_user_name.ssh 目录下,新建一个 config 文件(无后缀名)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#Windows用户,注意替换你的端口号和connect.exe的路径
ProxyCommand "C:\APP\Git\mingw64\bin\connect" -S 127.0.0.1:51837 -a none %h %p

#MacOS用户用下方这条命令,注意替换你的端口号
#ProxyCommand nc -v -x 127.0.0.1:51837 %h %p

Host github.com
User git
Port 22
Hostname github.com
# 注意修改路径为你的路径
IdentityFile "C:\Users\Your_User_Name\.ssh\id_rsa"
TCPKeepAlive yes

Host ssh.github.com
User git
Port 443
Hostname ssh.github.com
# 注意修改路径为你的路径
IdentityFile "C:\Users\Your_User_Name\.ssh\id_rsa"
TCPKeepAlive yes
  • 保存后文件后测试方法如下,返回 successful 之类的就成功了。
1
2
# 测试是否设置成功
ssh -T git@github.com

mac 下密钥位置

open ~/.ssh