前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >git实用复习篇之一步到位!

git实用复习篇之一步到位!

作者头像
马克付
发布2022-12-12 16:36:31
3560
发布2022-12-12 16:36:31
举报
文章被收录于专栏:技术进阶系列

* 本篇 初衷为 复习一下 git 因为 git 操作比较重要,日常虽然使用的操作不是很多,但也比较重要

ps: 预览效果 可能不佳,建议直接 点击文末 ---> 查看原文

## `1、起步`

1、分布式

2、独立开

3、安装直接官网 不谈了

4、过程

## `2、常用命令`

```

1、查看目录 pwd

2、git init 初始化一个git仓库 其实就是加了一个.git 文件

3、常规 添加内容三连操作

git add .

git commit -m 'xxx'

git push

4、常规 新建分支操作

git checkout -b 'xxx'

git push(将当前分支提交远端)

当然 git push 之后可能会 执行 提示命令 直接 执行就行

5、查看状态 git status

查看差异 git diff

查看历史记录 git log

6、版本回退 git reset --hard HEAD^

回退错误 想撤销怎么办 git reflog

7、撤销 修改 git checkout -- file 注意需要 加上 --

8、删除文件 rm test.txt

上面这种情况的撤销删除 git checkout -- test.txt

删除版本库文件 git rm test.txt

git commit -m "remove test.txt"

```

## `3、谈谈分支管理`

1、常用分支策略 展示

```

git checkout -b dev

Switched to a new branch 'dev'

```

```

git branch

* dev

master

```

* 当 dev 开发完成 后需要合并到master

```

git merge dev

```

* 然后 删除 开发分支

```

git branch -D dev (强制删除)

git branch -d dev

Deleted branch dev (was b17d20e).

```

* 查看后只剩下 master

```

git branch

* master

```

2、创建和切换分支有第二种方法

查看分支:`git branch`

创建分支:`git branch <name>`

切换分支:`git checkout <name>`或者`git switch <name>`

创建+切换分支:`git checkout -b <name>`或者`git switch -c <name>`

合并某分支到当前分支:`git merge <name>`

删除分支:`git branch -d <name>`

3、关于冲突 需要做个选择

```

1、使用 当前的内容还是远端的内容

2、需要 手动选择新的 正确的部分

3、git log --graph 命令可以看到分支合并图(没用过)

```

4、关于新建bug 分支

```

1、但当前开发分支 内容修改了一半 出现bug 怎么处理 ?git stash 暂存修改

常规在当前开发分支 创建bug分支 git checkout -b bug-fixed

需要记得 git push 推到远端才行

3、完成修复后切换到 dev分支 git merge bug-fixed 合并一下

4、但刚才 git stash暂存 怎么恢复 ?(展示下面两种方法)

0、查看 stach 列表 git stash list

1、git stash apply + git stash drop(删除 stash 内容)

2、git stash pop,恢复的同时把stash内容也删了

3、再次查看 git stash list 看不到任何内容

4、可多次stash,恢复的时候,先用`git stash list`查看,然后恢复指定的stash,用命令:

git stash apply stash@{0}

```

5、推送分支

```

1、查看远程库信息,使用 git remote -v

2、git push origin dev

3、从本地推送分支,使用 git push origin branch-name,如果推送失败,先用 git pull 抓取远程的新提交

4、下面几个慎用

- 在本地创建和远程分支对应的分支,使用 git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

- 建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

- 从远程抓取分支,使用 git pull ,如果有冲突,要先处理冲突

```

6、rebase(变基 少用)

```

1、git rebase 让多次提交记录 展示为一条线

```

7、打 tag(标签)

```

1、选择需要 打tag 分支

$ git branch

* dev

master

$ git checkout master

Switched to branch 'master'

2、打tag操作 git tag v1.0

3、查看当前tag

git tag

v1.0

4、之前需要 打tag 忘记了 现在补上怎么办

先执行git log --pretty=oneline --abbrev-commit

然后找到 对应的commit id

git tag v0.9 f52c633

git show <tagname> 查看标签信息

5、删除 tag

- 命令`git push origin <tagname>`可以推送一个本地标签;

- 命令`git push origin --tags`可以推送全部未推送过的本地标签;

- 命令`git tag -d <tagname>`可以删除一个本地标签;

- 命令`git push origin :refs/tags/<tagname>`可以删除一个远程标签

```

## `4、出错了怎么办`

```

1、新建分支错误

* 比如 需要基于master 新建xxx 但你基于 321 分支 新建的

1、删除远端分支 xxx

2、使用 git branch 查看本地分支

使用 git -D xxx 删除本地分支

3、git checkout master

4、git pull

5、git checkout -b xxx

git push

6、然后就可 开心的在当前分支 dev 了

```

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 马克付 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档