Git-入门
流程
下载&安装
打开Git
右键-Open git bash here
菜单/程序-git bash
cmd命令提示符
1 | pwd 查看程序允许的目录位置 |
配置Git
1 | git config --global user.name "<你的用户名>" |
查看配置
1 | git config --list |
初始化仓库
需要Git服务器进行代码托管,可以自建Git服务器,也可以使用Github或Gitee的免费服务器。本文章以Gitee为例进行演示,
远端初始化仓库



本地初始化仓库

绑定远端仓库
1 | git remote add origin https://gitee.com/littleboy97/git-practice |
修改仓库
克隆仓库
将远端仓库克隆到本地
1 | 方式1:HTTPS |

1 | 查看当前仓库状态 |

添加文件
添加git缓冲区
1 | 添加指定文件 |

添加版本评论
1 |
|
查看版本库
文件在评论过程会形成一次log记录,然后可通过git log查看记录来获取
1 | git log |
通过commit后的那串数字,可以找到每次的提交
1 | git reset --head <commitID> |
查看文件差异
1 | git diff <commit ID1> <commit ID12> |


同步更新远端仓库
1 | git push |

分支
分支,创建用于功能的编写和功能的测试使用的环境。
设计流程:
graph LR develop-->masterV1.0 master-->develop develop-->Feature
查看分支
1 | git branch |
创建
分支,但是是没有切换到新建的分支的,需要checkout检出
1 | git branch <分支名> |
切换
然后本地是否变化?似乎不能
1 | git checkout <分支名> |

文件夹内容显示和分支的关系(图)
问题:
当我们正常使用Git切换分支时,会出现以下提示(请在切换分支之前提交您的更改或隐藏它们)Please commit your changes or stash them before you switch branches.
方法
解决方案:
因为当前的分支dev 最初也是从master 分支上衍生出来的。而此时你要再从该分支上切换到其主分支。那么你需要先把该dev分支上的改动提交后才能切换,但是该dev分支上还没有完成全部的修改,你不想提交。那么此时你就要选择 stash (存放)它们(你在当前分支上改动的却没有提交commit的内容)。
所以第一步,在当前分支上执行 git stash 命令。将当前分支存起来,id为 807be186826这时候再执行 git status 命令,显示没有东西需要提交,接着就可以在主分支master上创建并切换到新的分支去修复另一个Bug了。
那修改完那个Bug也提交后,就该回到dev 分支上去继续修改那个未完成的Bug。
执行 git checkout dev 切换到 dev 分支,这个时候执行 git status 命令仍旧显示没有东西需要提交。毕竟我们前边已经成功将dev上未提交的改动给“隐藏“了,这时,用 $ git stash list 命令去查看我们“存储”的列表。
上传
将本地分支推送到远端仓库。
1 | git push |
如果远端无分支则设置下面方法上传推送
1 | git push -u origin <分支名> |

下载
将远端仓库推送到本地分支。
1 | git pull |
如果远端无分支则设
1 | git pull <remote> <branch> |
合并
将设计完成的功能分支进行合并到汇总分支master。
在分支做好的内容有两种处理:1、上传分支再切换主分支合并;2、git staus将当前分支暂存起来
1 | git staus |
1 | 切换汇总分支 |
切换到需要汇总的分支,输入如下代码,将其他分支合并进来
1 | 合并 |

删除
删除本地分支
1 | git branch -d <分支名> |

更新远端分支,并删除远端分支
1 | git push -u origin -d <分支名> |

协同
代码冲突

回退版本
本地回退版本,revert会按照某个commit版本,并会当作新版本使用。
1 | git revert HEAD^ |
本地回退版本,reset会回退到某个commit版本,并会删除后续版本。
1 | git reset HEAD^ |
参考
菜鸟教程:https://www.runoob.com/git/git-tutorial.html
vim编辑器
标签