您现在的位置是:首页 >学无止境 >git提交分支网站首页学无止境

git提交分支

小杨不香菜 2024-06-26 14:23:27
简介git提交分支

1. git提交分支相关

  • 在本地新建分支,保证和远程分支一样
git checkout -b 分支名

如果分支已存在,只需要切换的话

git checkout 分支名
  • 提交前先把代码拉下来更新一下,确保不会覆盖别人的代码
git pull origin 远程分支
  • (如果有)解决冲突
git diff  // 然后查看冲突的原因
  • 查看git状态(哪些还未提交)
git status
  • 提交到缓存区
git add .
  • 提交到本地仓库
git commit -m '我这次提交是为了干啥'
  • 提交到远程仓库(线上仓库)
git push origin 分支名		
  • (如果不存在)本地建立一个你要合并的分支(如你在a分支上开发,现在要和b分支merge并提交到b分支上)
git checkout -b 要合并的分支b
  • 把要合并分支的代码拉下来
git pull origin 要合并的分支b
  • 在本地合并到b分支
git merge 要合并的分支b
  • 如果报错,那么查看git状态
git status

2. 关于.gitigonore 文件详解

这个文件的完整文件名就是“.gitignore”,注意最前面有个“.”。这

一般来说每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。

实际项目中,很多文件都是不需要版本管理的,比如Python的.pyc文件和一些包含密码的配置文件等等。

这个文件的内容是一些规则,Git会根据这些规则来判断是否将文件添加到版本控制中。
过滤规则:

/mtk/ 过滤整个文件夹
*.zip 过滤所有.zip文件
/mtk/do.c 过滤某个具体文件

被过滤掉的文件在push的时候不会上传。

需要注意的是,gitignore还可以指定要将哪些文件添加到版本管理中:

!*.zip
!/mtk/one.txt

版本规则:
唯一的区别就是规则开头多了一个感叹号,Git会将满足这类规则的文件添加到版本管理中。

假如只需要管理/mtk/目录中的one.txt文件,这个目录中的其他文件都不需要管理。就需要使用这个!规则:

/mtk/
!/mtk/one.txt

如果在创建.gitignore文件之前就push了项目,那么即使你在.gitignore文件中写入新的过滤规则,这些规则也不会起作用,Git仍然会对所有文件进行版本管理。
出现这种问题的原因就是Git已经开始管理这些文件了,所以你无法再通过过滤规则过滤它们。

重点:在项目开始就创建.gitignore文件的习惯,否则一旦push,处理起来会非常麻烦。

3. git的版本回退
因为在合并分支的过程中,变更太多,是本地环境配置的问题,需要回退到上一个版本,然后再重新提交。

git log

  • 定义:该命令显示从最近到最远的提交日志。每一次提交都有对应的 commit id和 commit message。
    在这里插入图片描述
git log --pretty=oneline
  • 可以将版本号和描述内容在一行内显示,使得输出更加简洁一些
    在这里插入图片描述
git reset --hard id
  • 定义:根据 id 回退到指定的版本,一般要回退的版本号的前7位即可
git push origin HEAD --force
  • 推送到本地到远程仓库:让远程仓库代码你本地一样,到当前本地的版本。
git reflog
  • 定义:查看命令操作的历史

查找到需要的 操作id,依旧使用

*git reset --hard id*

可以回退到先前的版本。

更多详情可参考(原文出处):https://blog.csdn.net/weixin_44911248/article/details/124529556

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。