Git的使用

一、Git快速入门

1.1 第一阶段:基本功能

想要让git对一个目录进行版本控制需要以下步骤:

  • 进入要管理的文件夹
git init
  • 管理目录下的文件状态
git status
注:新增的文件和修改后的文件都是红色
  • 管理指定文件(红变绿)
git add 文件名
git add .   //当前目录下所有文件
  • 个人信息配置:用户名、邮箱【一次即可】
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
  • 生成版本
git commit -m '描述信息'
  • 查看版本记录
git log

1.2 第二阶段:扩展新功能

  • 回滚至之前的版本
git log
git reset --hard 版本号
  • 回滚至之后的版本
git reflog
git reset --hard 版本号

二、Git分支

2.1 分支

分支可以给使用者提供多个环境,意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。

2.2 紧急修复BUG方案

2.3 命令总结

  • 查看分支
git branch
  • 创建分支
git branch 分支名称
  • 切换分支
git checkout 分支名称
  • 分支合并(可能产生冲突)
git merge 要合并的分支
注意:切换分支再合并(谁合并谁)
  • 删除分支
git branch -d 分支名称

2.4 工作流

2.5 远程仓库

实际情境模拟操作

  • 在公司上传代码
1. 给远程仓库起别名
    git remote add origin 远程仓库地址    
2. 向远程推送代码
    git push -u origin 分支
  • 在家的时候第一次获取代码用clone克隆代码
1. 克隆远程仓库代码
    git clone 远程仓库地址(内部已实现git remote add origin 远程仓库地址)
2. 切换分支
    git checkout 分支
  • 在家进行开发
1. 切换到dev分支进行开发
    git checkout dev   //dev表示分支名称
2. 把master分支合并到dev[仅一次]
    git merge master
3. 修改代码
4. 提交代码
    git add .
    git commit -m 'xxx'
    git push origin dev
  • 回到公司中继续写代码
1. 切换到dev分支进行开发
    git checkout dev    //dev表示分支名称
2. 拉代码
    git pull origin dev //这里不用-u是因为会默认拉取master,所以手动拉取分支dev
3. 继续开发
4. 提交代码
    git add .
    git commit -m 'xxx'
    git push origin dev
  • 又回到家中继续开发
1. 切换到dev分支进行开发
    git checkout dev    //dev表示分支名称
2. 拉代码
    git pull origin dev //这里不用-u是因为会默认拉取master,所以手动拉取分支dev
3. 继续开发
4. 提交代码
    git add .
    git commit -m 'xxx'
    git push origin dev

开发完毕,要上线

1. 将dev分支合并到master,进行上线
    git checkout master        //切换到master
    git merge dev              //合并dev的内容到master
    git push origin master     //上传master代码
2. 将dev分支也推送到远程
    git checkout dev           //切换到dev
    git merge dev              //合并master的内容到dev
    git push origin dev        //上传dev代码

2.6 命令总结

  • 添加远程连接(别名)
git remote add origin 地址
  • 推送代码
git push origin dev  // 分支别名dev,主线master
  • 下载代码
git clone 地址
  • 拉取代码
git pull origin dev
等价于
git fetch origin dev  // 将代码拉到版本库
git merge origin/dev  // 从版本库拉到本地
  • 保持代码提交整洁(变基)
git rebase 分支
  • 记录图形展示
git log --graph --pretty=format:"%h %s"

三、其他功能

3.1 Beyond Compare快速解决冲突

  • Beyond Compare 是一款强大的比较工具,合理的使用可以有效的提升工作效率
  • git mergetool 内置了很多可以使用的合并工具,并且支持调用自定义的合并工具
  • git 的官方文档写得真的挺详细,有时间可以多看一看,你会发现很多有意思的功能
  • 急于解决问题时可以不求甚解,解决问题后最好可以明白其中的缘由,这其实就是一种进步
  • 在window环境下的Beyond Compare 4
  1. 安装Beyond Compare 4 该软件是收费的,破解方法
  2. 在git中设置
设置mergetool
git config --global merge.tool bc4
// 为什么是BComp.exe,官方文档说明要这样使用。
git config --global mergetool.bc4.cmd "\"D:\\Program Files\\Beyond Compare 4\\BComp.exe\" \"\$LOCAL\" \"\$REMOTE\" \"\$BASE\" \"\$MERGED\""
git config --global mergetool.bc4.trustExitCode true
git config --global mergetool.keepBackup false
  1. 应用Beyond Compare解决冲突
当遇到冲突时,使用以下命令打开,会默认打开Beyond Compare
git mergetool

3.2 多人协作开发

暂时没用到,以后有机会再学习下。


本文章使用limfx的vscode插件快速发布