当前位置: 首页 > news >正文

git常用的命令

最近使用git进行团队开发遇到的一些分支的问题需要使用各种命令,整理一下方便日后使用

1.常用的Git命令

1.初始化仓库

git init    //创建一个新的Git仓库

2. 克隆仓库

git clone <repository-url>   //克隆远程仓库到本地。

3.查看当前的状态

git status     //查看文件的当前状态(是否被修改、是否已暂存等)
git branch   //查看本地的所有分支
git branch -a  //查看本地和远程的所有分支
git branch -r    //查看远程分支

4.添加文件到暂存区

git add <file-name>   // 将文件添加到暂存区。
git add .    //添加当前目录下的所有文件。

5.提交更改

git commit -m "commit message"  //提交暂存区的更改到本地仓库,并附上提交信息软件开发规范:feat: 新功能(Feature)。表示添加了新的功能或特性到项目中。fix: 修复(Bug Fix)。表示修复了项目中的错误或问题。docs: 文档(Documentation)。仅更改了项目的文档,没有修改代码的逻辑或功能。style: 风格(Style)。代码风格或格式上的更改,这些更改不改变代码的逻辑或功能,但可能提高代码的可读性或一致性。refactor: 重构(Refactor)。对代码进行结构上的改进,以提高其可维护性、可读性或可扩展性,而不改变其外部行为。perf: 性能(Performance)。对代码进行的更改旨在提高程序的性能,比如减少内存使用、加快执行速度等。optimize: 优化(Optimize)。与性能提升相似,但更侧重于代码质量或资源使用的优化,可能包括算法改进、数据结构选择等。test: 测试(Test)。添加或修改测试代码,以确保软件的质量。这可能包括单元测试、集成测试等。build: 构建(Build)。更改了项目的构建系统或依赖项,比如更新构建工具的配置、添加新的构建步骤等。ci: 持续集成(Continuous Integration)。对项目的持续集成配置或脚本进行的更改,如修改CI/CD管道中的步骤、环境配置等。chore: 杂项(Chore)。通常指那些不直接影响代码、文档、测试、性能或构建系统的更改,如更新许可证信息、清理项目文件等。revert: 回滚(Revert)。将之前的提交撤销或恢复到某一状态,通常用于修复因错误提交导致的问题。

6.查看提交历史

git log     //显示提交历史。
git log -n <number>   //查看最近的 N 个提交
git log --since="2025-01-01" --until="2025-04-01"     //这将显示自 2025 年 1 月 1 日至 2025 年 4 月 1 日之间的提交。
git log --oneline        //以单行的方式查看每个提交,简化显示:
git log <file-path>     //查看某个文件的提交历史
git log -p       //查看每个提交之间的差异

7.查看和创建和切换分支

git branch       //查看分支
git branch <new-branch-name>    //创建新的分支
git checkout <branch-name>     //切换分支
git checkout -b <branch-name>    //创建并切换分支
git remote -v     //显示远程仓库的信息。
git branch -vv   //显示本地所有分支及其跟踪的远程分支的信息

8.合并分支

git merge <branch-name>     //将指定分支的更改合并到当前分支。

9.拉取最新代码

git pull    //从远程仓库获取并合并最新的代码
git pull origin master   //拉取远程仓库的master最新代码

10.推送代码到远程分支

git push      //将本地提交的代码推送到远程仓库
git push -f [远程仓库名] [本地分支名]:[远程分支名]       //强制推送代码到远程仓库:如果需要强制推送代码到远程仓库
git push -f origin master   //强制推送到远程的master分支

11.删除本地分支

git branch -d <branch-name>      //删除本地的分支
git branch -D <branch-name>   //强制删除本地分支
git reflog   //可以恢复丢失的提交

12.重命名本地分支

git branch -m <old-branch-name> <new-branch-name>    //重命名本地分支。

13.添加远程仓库

git remote add origin <repository-url>     //添加远程仓库并指定名称(通常为origin)。

14.获取远程仓库的最新状态

	git fetch     //获取远程仓库的最新数据,但不自动合并。

15.重置文件到指定提交和撤销更改

git reset --hard <commit-id>   //重置当前分支到指定的提交。
git checkout -- <file-name>    //撤销对某个文件的所有修改,恢复到最近的提交状态

16.查看文件的差异

	git diff     //查看文件的修改差异

17.某个特定提交(commit)从一个分支应用到当前分支

git cherry-pick <commit-hash>     //选择性地合并提交:当你只想从某个分支中获取特定的提交,而不想合并整个分支时,cherry-pick 非常有用。避免不必要的提交:如果你不希望引入目标分支的所有提交,但需要其中一部分,你可以使用 cherry-pick 来选择性地获取。

步骤:
1.切换到目标分支:首先确保你已经切换到你想要将提交应用到的分支。
git checkout
2.执行 cherry-pick 操作:然后使用 cherry-pick 命令将特定的提交引入当前分支
git cherry-pick
3.直接推送到与远程仓库某个分支
git push origin

18.多次提交的代码和git记录合并

	git rebase -i HEAD~n    //n是要压缩的提交数量例如:如果你希望将最近的5个提交压缩成一个提交,可以执行git rebase -i HEAD~5。

步骤:
1.使用命令:git rebase -i HEAD~n 输入提交的次数
2.我们需要关注的是最上面几行以pick开头的信息。需要把除了第一行外的pick改成s。
在这里插入图片描述
3.然后按esc键退出输入模式,输入:(英文冒号)进入底线命令模式)
4.再输入wq 即保存后退出
5.之后会展示如下界面,进行提交注释处理。我们把除了一个条之外的注释都删除掉,删除后的效果如下:
在这里插入图片描述
之后同样地保存退出即可
6.强制推送代码到远程仓库:如果需要强制推送代码到远程仓库,可以在推送命令中加入-f参数,使用以下命令:
git push -f [远程仓库名] [本地分支名]:[远程分支名]
git push -f origin master

有待后期的更新和优化

相关文章:

  • CSS 美化页面(五)
  • PD分离:优化大语言模型推理效率
  • MDA测量数据查看器【内含工具和源码地址】
  • ARINC818协议的帧格式
  • ARINC818协议(五)
  • Superduper - 在数据上构建端到端AI工作流和应用
  • AI问答收集
  • 深入理解React中的Props与State:核心区别与最佳实践
  • 基于CNN卷积神经网络和GEI步态能量提取的视频人物步态识别算法matlab仿真
  • QT6 源(36):界面组件的总基类 QWidget 的源码阅读
  • 《Spring Boot 测试框架指南:@SpringBootTest与Mockito的最佳实践》
  • PCM 参数深度解析:采样率、帧、缓存大小与多通道关系
  • Docker 容器与镜像核心操作命令大全(实战指南)
  • AI开发-效率提升小工具-“打盹弹窗侠”记录
  • 【Python3】Django 学习之路
  • 55、⾸屏加载⽩屏怎么进⾏优化
  • ES6 Object.values 特定字段处理
  • Java项目—— 拼图小游戏(进阶版)
  • PowerBi中的Measure(度量值)如何理解和应用?
  • 数字化转型浪潮下,B端产品如何助力企业乘风破浪?
  • ETF市场规模首破4万亿,月内ETF基金净流入超3000亿
  • 马上评|机器人马拉松,也是具身智能产业的加速跑
  • 观察|如何推动再保险交易规模上量增加话语权,行业在临港新片区共倡议
  • 刘国梁:奥运会乒乓球项目增至六金,国乒机遇与挑战并存
  • 遭遇FIFA三个转会窗禁令,申花有苦难言将选择赔偿
  • 道客网络陈齐彦:技术无界化,开源让AI变成了“全民食堂”