前言
git使用方法比较容易忘记,特此记录
常用命令
- 设置用户名
git config --global user.name twoonefour
- 设置邮箱
git config --global user.email twoonefour@pursuecode.cn
- 设置http代理
git config --global http.proxy http://127.0.0.1:10809
- 设置https代理
git config --global https.proxy http://127.0.0.1:10809
- 登陆保存账号密码
git config --global credential.helper true
- n个commit合成一个commit
git rebase -i HEAD~n
- 恢复commit至未改动
git reset --hard HEAD
- 查看git对应用户从某时到某时的改动, 简短
git log --author=user --since=2021-01-01 --until=2021-06-30 --shortstat --oneline
git权限验证
在没有登陆时是没法拉取自己的私人库的,需要权限验证,有两种方法,一种用token登陆,一种用ssh密钥登陆
使用token登陆
创建token
如图解
以上就是token的创建流程
登陆
首先设置你的username
和email
git config --global user.name twoonefour
git config --global user.email twoonefour@pursuecode.cn
git clone https://github.com/<你的用户名>/<你的库名称>.git
我这就是git clone https://github.com/twoonefour/halo2.git
会让你输入用户名和密码, 我的用户名就是twoonefour
, 密码就是刚才生成的token,至此没有问题的话应该能拉取成功了
使用ssh密钥
生成公钥和私钥
- 打开shell,
windows cmd
或者linux shell
- 输入
ssh-keygen -t ed25519 -C "your_email@example.com"
,保存位置可以自己换,linux默认为/root/.ssh/id_ed25519
, windows默认为C:\Users\username/.ssh/id_ed25519
,然后一路回车 - 打开
id_ed25519.pub
文件待用
这里ssh-keygen
会生成一个公钥一个私钥,pub
结尾的文件是公钥,另一个是私钥
github上创建公钥
还是在settings这
把上一步id_ed25519.pub
中的内容复制粘贴进去
点生成即可
测试连通性
linux请配置/root/.ssh/config文件,内容如下
Host github.com
IdentityFile /root/.ssh/<你的私钥文件名>
windows请配置C:/Users/<你的用户名>/.ssh/config
,也是上面和linux相似的内容,修改私钥路径就行
Host github.com
IdentityFile C:/Users/<你的用户名>/.ssh/<你的私钥文件名>
然后输入ssh -T git@github.com
出现这个提示就成功配置了
拉取
ssh密钥认证拉取
使用ssh密钥拉取的时候就是用ssh的命令
在命令行中就是
git clone git@github.com:<你的用户名>/<你的库名称>.git
ssh拉取是经过ssh协议的,即便是配置了http代理也不会用代理,请参考别人的文章
让你的SSH通过HTTP代理或者SOCKS5代理 —— 壳壳
需要注意的是proxycommand是在有相应软件下才能使用的
比如
ProxyCommand nc -X 5 -x 127.0.0.1:1080 %h %p
需要系统中有nc这个软件才能使用
token认证拉取
在命令行
git clone https://github.com/<你的用户名>/<你的库名称>.git