编程 Git 常用命令详解

2024-11-18 16:57:24 +0800 CST views 543

Git 常用命令详解

Git 是当今最流行的分布式版本控制系统之一,掌握 Git 的常用命令不仅是开发人员的基本技能之一,也有助于提高团队协作和项目管理的效率。本文将介绍 Git 中最常用的命令,帮助你快速上手并深入了解 Git 的使用。

git init — 初始化仓库

git init 命令用于在本地目录中初始化一个新的 Git 仓库。这是将现有项目纳入 Git 管理的第一步。

git init

执行该命令后,Git 会在当前目录下创建一个 .git 目录,用于跟踪该项目的所有更改。

git clone — 克隆远程仓库

git clone 命令用于将远程仓库复制到本地。它不仅会复制代码,还会复制整个项目的版本历史。

git clone https://github.com/user/repo.git

如果只想复制某个分支,可以加上 -b 参数:

git clone -b branch_name https://github.com/user/repo.git

git add — 添加文件到暂存区

git add 命令用于将修改过的文件添加到暂存区,为下一次提交做好准备。它不会直接提交修改,而是标记哪些文件需要被提交。

git add <file>

如果要添加所有修改过的文件,可以使用 .

git add .

git commit — 提交更改

git commit 用于将暂存区中的文件提交到本地仓库,生成新的版本快照。通常会加上 -m 参数添加提交信息,以说明这次提交的目的。

git commit -m "Add new feature"

如果想提交时对文件做进一步修改,可以使用 -a

git commit -am "Fix bug and commit changes"

git status — 查看仓库状态

git status 命令用于查看当前工作区的状态。它会显示哪些文件被修改、哪些文件在暂存区以及哪些文件尚未被跟踪。

git status

这个命令可以帮助开发者随时了解项目中发生了哪些变化。

git log — 查看提交历史

git log 命令用于查看项目的提交历史。它会列出所有提交的哈希值、作者、提交日期和提交信息。

git log

如果想要简化输出,可以使用 --oneline 参数:

git log --oneline

git diff — 查看更改

git diff 命令用于比较文件的不同版本,展示工作区和暂存区之间的差异。它可以帮助你检查尚未提交的修改内容。

git diff

也可以用来比较不同分支或提交之间的差异:

git diff branch1 branch2

git branch — 管理分支

git branch 命令用于创建、删除和列出分支。分支是 Git 强大的功能之一,允许开发者在不同的分支上并行开发。

  • 创建新分支:
git branch <branch_name>
  • 切换到新分支:
git checkout <branch_name>
  • 删除分支:
git branch -d <branch_name>
  • 列出所有分支:
git branch

git checkout — 切换分支或恢复文件

git checkout 命令不仅用于切换分支,还可以用于恢复文件到某个特定版本。

  • 切换分支:
git checkout <branch_name>
  • 恢复文件到上一个提交状态:
git checkout -- <file_name>

git merge — 合并分支

git merge 命令用于将其他分支的内容合并到当前分支。通常在完成一个功能开发后,将功能分支合并回主分支(master 或 main)。

git merge <branch_name>

如果有冲突,Git 会提示手动解决冲突,然后重新提交。

git pull — 拉取远程代码并合并

git pullgit fetchgit merge 的组合命令,用于从远程仓库拉取最新的代码并与本地分支进行合并。

git pull origin <branch_name>

git push — 推送代码到远程仓库

git push 命令用于将本地分支的提交推送到远程仓库。通常用于将本地开发的内容同步到远程仓库,供团队成员查看和使用。

git push origin <branch_name>

如果是第一次推送某个分支,可以使用 -u 参数,设置默认的远程分支:

git push -u origin <branch_name>

git stash — 暂存当前更改

git stash 用于将当前的修改保存起来,以便切换到其他分支或执行其他操作。修改不会丢失,可以在后续恢复。

  • 暂存当前更改:
git stash
  • 查看所有暂存的内容:
git stash list
  • 恢复暂存的更改:
git stash pop

git reset — 撤销提交

git reset 命令用于撤销某次提交,可以回滚到特定的提交版本。reset 提供了三种模式:

  • soft:仅重置提交,不修改工作区和暂存区的文件。
  • mixed:重置提交和暂存区,保留工作区的更改。
  • hard:重置提交、暂存区和工作区,彻底回滚更改。
git reset --hard <commit_hash>

git rebase — 变基操作

git rebase 命令用于整理提交历史,使其更加清晰。在协同开发时,rebase 可以将你在本地的开发提交“移动”到远程分支的最新提交之后,保持提交历史的线性化。

git rebase <branch_name>

掌握 Git 的这些常用命令后,你就可以灵活管理项目中的代码版本,轻松进行分支操作,解决代码冲突,保障代码的稳定性和可追溯性。Git 不仅仅是一个版本控制工具,它还是团队协作和敏捷开发的重要支柱。

复制全文 生成海报 版本控制 开发工具 Git

推荐文章

联系我们
2024-11-19 02:17:12 +0800 CST
PHP来做一个短网址(短链接)服务
2024-11-17 22:18:37 +0800 CST
Nginx rewrite 的用法
2024-11-18 22:59:02 +0800 CST
H5端向App端通信(Uniapp 必会)
2025-02-20 10:32:26 +0800 CST
向满屏的 Import 语句说再见!
2024-11-18 12:20:51 +0800 CST
Vue3中怎样处理组件引用?
2024-11-18 23:17:15 +0800 CST
JavaScript设计模式:组合模式
2024-11-18 11:14:46 +0800 CST
Vue3 vue-office 插件实现 Word 预览
2024-11-19 02:19:34 +0800 CST
MySQL 1364 错误解决办法
2024-11-19 05:07:59 +0800 CST
JavaScript 异步编程入门
2024-11-19 07:07:43 +0800 CST
三种高效获取图标资源的平台
2024-11-18 18:18:19 +0800 CST
详解 Nginx 的 `sub_filter` 指令
2024-11-19 02:09:49 +0800 CST
Rust 与 sqlx:数据库迁移实战指南
2024-11-19 02:38:49 +0800 CST
一些高质量的Mac软件资源网站
2024-11-19 08:16:01 +0800 CST
api接口怎么对接
2024-11-19 09:42:47 +0800 CST
四舍五入五成双
2024-11-17 05:01:29 +0800 CST
程序员茄子在线接单