git 使用复习

134 阅读3分钟

前言:每天多一点点的努力,不为别的,只为了日后能够多一些选择,选择云卷云舒的小日子,选择自己喜欢的生活,选择自己喜欢的人。早安!

1. 基本用法复习

1. 初始化仓库

在当前目录下会自动生成一个 .git 目录

当前目录下所有文件都属于 untracked ( 未跟踪 )

git init

2. 查看当前工作区的文件状态

git status

3. 将工作区的未跟踪或修改的文件添加到暂存区

git add .

4. 将暂存区的文件提交到本地代码库

git commit -m "提交信息"

5. 忽略文件 .gitignore

根据自己的需要指定忽略文件的规则

忽略文件后, 确实想添加该文件, 可以使用 -f 强制添加到 git :

$ git add -f '文件名'

6. 本地仓库和远程仓库建立联系

6.1 查看本地仓库当前绑定的远程仓库

git remote -v  # 短指令
git remote --verbose # 长指令

6.2 添加远程仓库的关联

git remote add origin(远程仓库名)  '远程仓库的地址(ssh地址)'

6.3 删除远程仓库的关联

git remote remove origin(远程仓库名, 一般都是 origin)

6.4 查看提交日志

git log
git log --oneline # 一行的形式展现, 显示精简信息

7. 将本地代码库的代码上传到远程代码库

git push -u origin master # 记住这个分支

git push

8. 将远程代码库下载到本地代码库

git pull
git pull -all

9. 将别人的仓库克隆到本地 (克隆成功就是一个 git 仓库 ( .git文件存在 ) )

9.1 只要 clone 过来的仓库就不需要初始化了, 也可以直接进行 pull / push

git clone '远程仓库地址'

10. 切换到以前的版本

10.1 版本重置

--hard 一定要慎用, 将工作区没有提交的代码全部清空, 不保存, 直接切换

--soft 可以灵活使用, 将工作区没有提交的代码, 先添加到暂存区后再切换

git reset --hard 'commit hash'
git reset --hard HEAD~0 # 小技巧, 可以用 HEAD~0 表示回到最新的一次提交

10.2 查看历史操作记录

git reflog

2. 多分支

1. 创建分支

git branch 分支名 # 使用频率较低
git checkout -b 分支名 # 常用, 创建并切换到该分支

2. 查看分支

git branch -a # 查看所有分支(包括远程分支)

3. 切换分支

git checkout 分支名

4. 合并分支

4.1 将指定的分支合并到当前分支, 一般执行 merge 的分支都是 master

git merge 分支名

5. 删除本地分支

git branch 分支名 -D

6. 删除远程仓库分支

git push origin(远程仓库名) --delete reg(分支名)

3. 开发过程中比较常见的工作流程(PR)

3.1 GitFlow:git 工作流

1. 会将 master 分支锁住, 任何人不得直接 push 到 master 分支, 保护master , 意味着合并操作将没有意义了, 即使合并了分支, 也无法推送到远程

2. 既然不能直接提交到 master , 就需要新建一个分支并提交到 dev 分支中最后推送给远程仓库

git checkout -b dev # 新建分支
git add . # 修改完代码后进行添加并提交
git commit -m "描述信息"
git push -u origin dev # 推送到远程仓库

3. 在 git 管理平台 (github 码云等) 新建 PullRequest

4. 在 PR 中由其他成员(组长)进行 CodeReview(代码审查), 提出看法或整改建议. 修改完毕后通过审查及测试, 最后由组长进行合并

5. 统一通过 PR 的方式提交, Pull Request

作为程序员, 在开源世界中进行交流的两大方法:

lssues (向作者提问) 、Pull Request (向作者贡献代码)

4. 版本控制软件

1. git(分布式) - svn(集中式)

........