1.git 客户端
2.git 代码操作(下载、上传、删除、查看仓库地址)
下载代码:
git clone 仓库路径
上传代码:
git add
git commit -m "注释"
git push
删除代码:
git rm [-r] 代码;git commit -m "注释";git push
查看仓库地址:
git remote -v
3.git 分支操作(新建、切换、删除)
新建:git branch 新分支名
切换:git checkout 分支名
删除:
删除本地分支:
git branch -d 分支名
删除远端分支:
git push 【remote name】 -d 分支名
例子:git push origin -d nb2
查看所有分支(本地和远端):git branch -a
查看远端分支:git branch -r
切换到远端分支:git checkout origin/分支名
4.git 修改comments
修改最近一次comments:git commit --amend -m "新的注释"
5.git 参数(查看、设置)
查看:git config --list
设置:git config --global (http.postbuffer=1073741824)
6.git 日志
git log (--graph --pretty=oneline)
git reflog 操作日志历史记录
7.git 代码版本操作(回退,删除某次提交)
reset
git reset
$ git reset HEAD^ # 回退所有内容到上一个版本
$ git reset HEAD^ hello.php # 回退 hello.php 文件的版本到上一个版本
$ git reset 052e # 回退到指定版本
HEAD 表示当前版本
HEAD^ 上一个版本
HEAD^^ 上上一个版本
HEAD^^^ 上上上一个版本
以此类推...
可以使用 ~数字表示
HEAD~0 表示当前版本
HEAD~1 上一个版本
HEAD^2 上上一个版本
HEAD^3 上上上一个版本
8.git 代码冲突
a)A和B改了同一文件file1的同一行代码,A提交到远端仓库,B如何处理?
B处理的方案,先add,commit到本地库,在pull,有冲突需要手动merge。
然后再重新add,commit,push就ok了。
具体处理命令如下:
1)git add file1
2) git commit -m "User B modify file1"
3) git pull
4) 解决代码冲突(git mergetool)
5) git add file1
6) git commit -m "merge file"
7) git push
9.rebase
1)在branch上,多次commit,合并为一个comments
参考“git教程-git rebase 合并多条commit记录变为一条-马育民老师 (malaoshi.top)”
3e5ac5fb new f1 13:37
d839eb5 rebase feature modify
db24c94 Merge branch 'main' into 'f1'
使用命令:git rebase -i HEAD~2 或者 git rebase -i db24c94
选中
pick 选中第一项,s,合并其他提交,esc,wq后;提示修改comments,修改后,就可以了。
2)branch分支,合并主干main分支代码
参考“git rebase 使用方式 最直观的解释_git rebase main_YesterdayxDxD的博客-CSDN博客”
参考“git rebase超详细解读,一文搞懂!!!_星星不闪包退1的博客-CSDN博客”
git checkout main
git pull
git checkout branch1
git rebase main //基于主干和分支共同的基点,进行合并代码,如果有冲突需要解决冲突,在git rebase --continue,这样就将主干main最新代码和branch代码,合并为最新代码。
git merger [branch] //将branch最新代码merge到 main