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

Git 常用命令大全与详解

Git 是一种广泛使用的分布式版本控制系统。无论是管理个人项目还是进行团队协作,掌握 Git 的常用命令都是开发者必备的技能之一。本文将介绍一些常用的 Git 命令,并对其进行详细说明。

1. 基础命令

初始化仓库
  • git init:在当前目录下初始化一个新的 Git 仓库。
克隆仓库
  • git clone <repository-url>:从远程仓库克隆一份到本地。将 <repository-url> 替换为仓库的链接地址(如 GitHub、GitLab 等),即可下载该仓库到当前目录。
检查状态
  • git status:查看当前仓库状态,包括未跟踪的文件、修改的文件、暂存区文件等。

2. 变更管理

添加文件
  • git add <file>:将文件添加到暂存区,准备提交。
  • git add .:添加所有更改的文件(当前目录及子目录下)。
提交更改
  • git commit -m "message":将暂存区的文件提交到仓库并添加提交信息。
  • git commit -a -m "message":跳过 git add 步骤,直接提交已修改的文件。

3. 分支管理

分支是 Git 的强大功能之一,可以用来隔离不同的功能开发。

创建分支
  • git branch <branch-name>:创建一个新分支,但不会切换到该分支。
切换分支
  • git checkout <branch-name>:切换到指定分支。
  • git checkout -b <branch-name>:创建并切换到新分支。
删除分支
  • git branch -d <branch-name>:删除指定分支(本地)。
  • git push origin --delete <branch-name>:删除远程分支。

4. 合并分支

合并分支
  • git merge <branch-name>:将指定分支合并到当前分支。通常在开发完成后,将功能分支合并到主分支。
处理冲突

在合并过程中,可能会遇到冲突。Git 会提示你解决冲突。完成后,可以执行以下命令:

  • git add .
  • git commit -m "Resolve merge conflict"

5. 查看提交历史

查看提交日志
  • git log:查看提交历史。
  • git log --oneline --graph --all:以图形化简洁显示所有分支的提交历史。
查看差异
  • git diff:查看当前工作目录和暂存区的差异。
  • git diff <branch-name>:查看当前分支与指定分支的差异。

6. 远程仓库操作

查看远程仓库
  • git remote -v:查看已添加的远程仓库。
添加远程仓库
  • git remote add <name> <url>:添加新的远程仓库。
拉取远程仓库更新
  • git pull:从远程仓库获取最新内容并合并到当前分支。
推送到远程仓库
  • git push:将本地分支的内容推送到远程仓库。

7. 回滚操作

撤销文件修改
  • git checkout -- <file>:丢弃指定文件的工作区更改。
重置提交
  • git reset --soft <commit>:重置到指定提交,保留更改并暂存。
  • git reset --hard <commit>:将仓库重置到指定提交,丢弃所有更改。

8. Stash 暂存

保存当前修改
  • git stash:将当前工作目录的修改保存到堆栈中,便于切换分支。
恢复暂存内容
  • git stash pop:应用并移除最近一次 stash 内容。

9. 标签管理

创建标签
  • git tag <tag-name>:创建标签(默认指向最新提交)。
  • git tag -a <tag-name> -m "message":创建带有描述的标签。
推送标签
  • git push origin <tag-name>:将标签推送到远程仓库。

10. Git 配置

设置用户名和邮箱
  • git config --global user.name "Your Name":设置全局用户名。
  • git config --global user.email "you@example.com":设置全局邮箱。
查看 Git 配置
  • git config --list:查看所有 Git 配置信息。

http://www.kler.cn/a/400442.html

相关文章:

  • 请求响应入门
  • element ui table进行相同数据合并单元格
  • Web搭建入门教程:基于ssh向服务器推送文件
  • 了解存储过程
  • c#————委托Action使用例子
  • 【泛型 Plus】Kotlin 的加强版类型推断:@BuilderInference
  • LM2 : A Simple Society of Language Models Solves Complex Reasoning
  • MyBatis XML一个方法执行插入或更新操做(PostgreSQL)
  • Java Collection的使用
  • Jaskson处理复杂的泛型对象
  • (Linux 入门) 基本指令、基本权限
  • 动态规划 之 子序列系列 算法专题
  • 脚手架vue-cli,webpack模板
  • 资源管理功能拆解——如何高效配置和管理项目资源?
  • 高斯数据库Postgresql死锁和锁表解决方法
  • MATLAB深度学习(三)——LeNet卷积神经网络
  • 独立站干货:WordPress主机推荐
  • Python高级编程模式和设计模式
  • CTF攻防世界小白刷题自学笔记14
  • Flink算子