1. git 常用命令
1.1 常用命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| git init
git clone [url]
git status -s
git add . git add [文件名]
git commit -m [提交信息]
git pull
git push git push [远程主机名] [本地分支名]
git fetch --all
git merge [分支名]
git branch git checkout [分支名] git checkout -b [本地分支名] origin/[远程分支名]
git config --list
git config --global user.name "[name]" git config --global user.email "[email address]"
git config user.name "[name]" git config user.email "[email address]"
|
1.2 git remote
管理远程仓库
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| git remote
git remote -v
git remote add origin [远程仓库地址]
git remote remove [远程仓库名称]
git remote update origin --prune
|
1.3 git rebase
rebase操作可以把本地未push的分叉提交历史整理成直线;
rebase的目的是使得我们在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。
个人感觉非特定情况,还是不建议使用
2. Git的常见应用
2.1 本地项目上传至多个远程库
1 2 3 4 5 6 7 8 9 10 11
| git remote add gitee [url] git remote add gitee git@gitee.com:LuckRain/Knowledge-Sharing.git git remote add github git@github.com:LuckRain7/Knowledge-Sharing.git
git push gitee master git push github master
git remote rm [origin]
|
2.2 Git 远程分支强制覆盖本地分支
需在需要覆盖的分支上进行一下操作
1 2 3 4 5 6 7 8
| git fetch --all
git reset --hard [origin/master]
git pull
|
2.3 Git 配置忽略规则(.gitignore)不生效解决方案
清除缓存 重新提交
1 2 3 4 5 6 7 8 9 10 11
| git rm -r --cached .
git add .
git commit -m 'update .gitignore'
git push
|
2.4 Git 强制提交本地分支覆盖远程分支
1 2 3 4 5 6 7 8
| git add .
git commit -m '更新信息'
git push origin rain --force
|
2.5 分支合并
2.5.1 情景:
我现在的分支是 rain
我要把别人的分支 snow 合并到我的分支上来
2.5.2 操作:
- 首先要进行切换分支(切换分支前要保证自己分支的内容都已经提交了)
1 2 3 4 5
| git branch snow
git checkout -b snow origin/snow
|
- 在 snow 分支上拉取最新代码
- 切换回我自己的分支rain
- 执行合并
- 处理代码冲突
我这里比较喜欢使用 VS Code 的可视化界面解决代码冲突
2.6 版本回溯
1 2 3 4 5 6
| git reset --hard HEAD^
git log git reset --hard [commitId]
|
下图是 commitId 形式
2.7 同时配置gitee&github(多平台)ssh
2.7.1. 本地创建多个ssh
1 2 3 4 5 6 7
| cd ~/.ssh
ssh-keygen -t rsa -C "xxxx@email.com" -f "rain_github" ssg-keygen -t rsa -C "xxxx@email.com" -f "rain_gitee" ssg-keygen -t rsa -C "xxxx@email.com" -f "coding_id_rsa"
|
会在本地生成如下文件
2.7.2. 在各个平台进行ssh绑定
2.7.2.1 github平台操作
2.7.2.2 gitee 平台操作
2.7.3. 解决ssh冲突配置
在 C:\Users\ZHCZ\.ssh
文件夹中新建 config
文件
进行如下配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| Host gitee.com HostName gitee.com PreferredAuthentications publickey IdentityFile C:\Users\ZHCZ\.ssh\rain_gitee
Host github.com HostName github.com PreferredAuthentications publickey IdentityFile C:\Users\ZHCZ\.ssh\rain_github
Host e.coding.net HostName e.coding.net PreferredAuthentications publickey IdentityFile C:\Users\ZHCZ\.ssh\coding_id_rsa
|
2.7.4. 测试
1 2
| ssh -T git@gitee.com ssh -T git@github.com
|
返回success则表示设置成功
推荐阅读
如果您喜欢我的文章,希望能够关注我的微信公众号 RainCode,您的关注是莫大的鼓励 ❤