研发中学习git(删除分支/合并提交/回滚/保存当前状态/撤销修改)

简介: 研发中学习git(删除分支/合并提交/回滚/保存当前状态/撤销修改)

git基本组成框架:Workspace、Index / Stage、Repository、Remote


Workspace:开发者工作区

Index / Stage:暂存区/缓存区

Repository:仓库区(或本地仓库)

Remote:远程仓库

cfac71a2f66748a8868140afc22e6c34.png

4864c716066942a7b3c602e1b665b525.pnggit删除分支

删除远程分支:

git push origin --delete [branch_name]

删除本地分支:

git branch -d 会在删除前检查merge状态(其与上游分支或者与head)。

git branch -D 是git branch --delete --force的简写,它会直接删除。

查看远程分支:

git branch -r

查看本地分支:

git branch

查看全部:

git branch -a


将多次提交合并成一次提交再请求合并

查看历史提交记录:git log

里面有提交每次的版本号,以及当时提交对应的注释。


rebase用法链接

作用简要概括为:可以对某一段线性提交历史进行编辑、删除、复制、粘贴

合并提交

git rebase begin end 前开后闭区间

git rebase -i HEAD~3

然后对于三个版本号 进行修改前面的指令类型。


pick:保留该commit(缩写:p)

reword:保留该commit,但我需要修改该commit的注释(缩写:r)

edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)

squash:将该commit和前一个commit合并(缩写:s)

fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)

exec:执行shell命令(缩写:x)

drop:我要丢弃该commit(缩写:d)


然后跳转到注释修改界面。

将一段commit粘贴到另一个分支

1b8c5a55fdea4bf19db13839e3cd62c7.png

ff5ca794f31445889fd8b59619da71ef.png

      git  rebase   90bc0045b^   5de0da9f2   --onto master
      git checkout master
      git reset --hard  0c72e64


回滚代码仓库:

git reset 不加参数 重置后取消暂存区的变更

git reset 加三种参数 加id

(–soft 将头指针恢复? 已经add的暂存区以及工作区的所有东西都不变

–mixed将头恢复?已经add的暂存区也会丢失,工作区的代码不变

–hard一切恢复,头变,add的暂存区消失,代码都恢复到之前状态)

git reset --hard HEAD^ 是迭代当前仓库的上一个版本

git reset --hard HEAD~3回滚前三个版本

(git 合并提交 合并多了 解决办法:

git reset --hard 版本号)

git add . 与 git add -all一样 但是前一个命令不会记录删除操作。

比如本地删除一个文件,提交的时候会记录删除操作,提交仓库时会删除同样的文件。


git保存当前工作状态切换分支:git stash

stash这个保存是以栈的方式保存的,先进后出。


将文件撤销回到最近一次修改的状态:git checkout – file

git里的各种撤销


查看git配置文件

ls -ah查看隐藏目录 .git


相关文章
|
4月前
|
存储 网络安全 开发工具
【GIT】Git常用命令学习
【GIT】Git常用命令学习
57 1
|
11天前
|
缓存 开发工具 git
Git创建分支以及合并分支
在Git中,创建分支使用`git branch [branch_name]`,切换分支使用`git checkout [branch_name]`。修改文件后,通过`git add [file]`添加到暂存区,然后`git commit`提交到本地仓库。如果是新建分支的第一次推送,使用`git push origin [branch_name]`推送到远程仓库,之后可以简化为`git push`。合并分支时,使用`git merge [branch_name]`将指定分支的更改合并到当前分支。
13 2
Git创建分支以及合并分支
|
4月前
|
项目管理 开发工具 git
Git项目管理——分支(三)
Git项目管理——分支(三)
56 2
|
8天前
|
存储 Linux 开发工具
Git基础命令,分支,标签的使用【快速入门Git】
本文详细介绍了Git版本控制系统的基础概念和常用命令,包括工作区、暂存区和版本库的区别,文件状态的变化,以及如何进行文件的添加、提交、查看状态、重命名、删除、查看提交历史、远程仓库操作和分支管理,还涉及了Git标签的创建和删除,旨在帮助读者快速入门Git。
Git基础命令,分支,标签的使用【快速入门Git】
|
21天前
|
测试技术 开发工具 git
掌握 Git 分支策略:提升你的版本控制技能
在现代软件开发中,版本控制至关重要,Git 作为最流行的分布式版本控制系统,其分支管理策略对于高效协作和代码维护尤为重要。本文介绍了几种常用的 Git 分支策略,包括主线开发模型、功能分支模型、Gitflow 工作流和 Forking 工作流,并探讨了如何根据项目需求选择合适的分支模型。通过保持 `master` 分支稳定、及时合并清理分支、使用命名规范、利用 Pull Request 进行代码审查及自动化测试等最佳实践,可以显著提升团队协作效率和软件质量。掌握这些策略将帮助开发者更好地管理代码库,加快开发流程。
|
4月前
|
开发工具 git 开发者
【git merge/rebase】详解合并代码、解决冲突
【git merge/rebase】详解合并代码、解决冲突
304 0
|
4月前
|
开发工具 数据中心 git
详解IDEA git 版本回滚
详解IDEA git 版本回滚
135 0
|
2月前
|
开发工具 git 开发者
|
2月前
|
项目管理 开发工具 git
|
2月前
|
存储 小程序 安全
【技巧】git stash用的好,切换分支随便搞
本文详细介绍了 Git 中的 `git stash` 命令,帮助你在切换分支时临时保存未提交的更改。通过实际操作示例,展示了如何使用 `git stash` 的各种命令,如 `save`、`list`、`apply` 等。无论你是初学者还是有一定经验的开发者,都能从中受益。
33 0
【技巧】git stash用的好,切换分支随便搞