Git 实用工具 | 豆包MarsCode AI刷题

57 阅读3分钟

1、是什么

一个分布式版本控制工具

2、平台

Github、Gitlab、Gerrit、Gitee等

3、使用方式

生成公私钥 ssh-keygen -t ed25519 -C "邮箱"

公钥放github上

  • workspace:工作区
  • staging area:暂存区/缓存区
  • local repository:版本库或本地仓库
  • remote repository:远程仓库

3.1 本地操作

命令作用
git init初始化仓库
git add添加文件到暂存区
git rm将文件从暂存区和工作区中删除
git commit将暂存区的内容添加到仓库中
git mv移动/重命名工作区文件
git checkout分支切换
git switch(2.23版本引入)更清晰的切换分支
git restore(2.23版本引入)恢复/撤销文件的更改
git reset回退版本
git clone拷贝远程仓库
git status查看仓库状态,显示有变更的文件
git diff比较文件的不同,即暂存区和工作区的差异
git range-diff比较两个提交范围之间的差异
git notes添加注释
git show显示git对象的详细信息
git log查看历史提交记录
git blame 以列表形式查看指定文件的历史修改记录
git shortlog简洁的提交日志
git describe生成一个可读的字符串,该字符串基于 Git 的标签系统来描述当前的提交

git add # 添加指定文件到暂存区

git add . # 添加所有更改到暂存区

git commit -m "commit message" # 提交暂存区的更改到本地仓库

3.2 远程操作

命令作用
git remote远程仓库操作
git fetch从远程获取代码库
git pull下载远程代码并合并
git push上传远程代码并合并
git submodule管理包含其他git仓库的项目

查看目录结构 tree .git

简明指南:www.runoob.com/manual/git-…

4、团队合作的方式

  • owner创建好仓库,其他用户fork该仓库,在fork的仓库上进行开发
  • owner创建好仓库,给团队内成员分配权限,直接在同一个仓库内进行开发

创建一个 Pull Request

  1. 创建主分支main
  2. 创建feature分支
  3. 创建一个feature到main的Pull Request

5、常见的一些基本概念

保护分支:防止用户直接向主干分支提交代码,必须通过PR来进行合入

Code Review,CI:都是在合入前的检查策略,Code Review是人工进行检查,CI是通过一些定制化脚本检查

版本控制:一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统

6、总结

下面是一个从零开始拷贝远程仓库、创建分支、提交到远程仓库的例子:

1.克隆远程仓库
git clone username@host:/path/to/repository

2.创建一个叫做feature_x的分支,并切换过去
git checkout -b feature_x

3..添加文件到暂存区
git add <filename>
or
git add *

4..提交
git commit -m "代码提交信息"

5.推送feature_x分支
git push origin feature_x

6.切换回主分支
git checkout master

7.删除feature_x分支
git branch -d feature_x

当然,你也可以使用像idea等编译器直接图形化操作