git bash 常见场景用法

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

        选中

git bash 常见场景用法_第1张图片

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

        

你可能感兴趣的:(git)