前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >50 多个对所有人有用的 Git 命令

50 多个对所有人有用的 Git 命令

原创
作者头像
网络技术联盟站
发布2023-06-08 10:13:04
发布2023-06-08 10:13:04
3880
举报

Git 是目前最流行的版本控制系统之一,被广泛用于软件开发和团队协作。无论您是初学者还是有经验的开发人员,熟悉Git的基本命令是必不可少的。在本文中,我们将分享50多个常用的Git命令,并为每个命令提供详细的示例,帮助您更好地理解和使用它们。

仓库创建与克隆

1. git init

初始化一个新的Git仓库。

示例:

代码语言:shell
复制
git init

2. git clone

克隆一个远程Git仓库到本地。

示例:

代码语言:shell
复制
git clone https://github.com/user/repo.git

提交与修改

3. git add

将文件或目录添加到暂存区。

示例:

代码语言:shell
复制
git add file.txt
git add directory/

4. git commit

提交暂存区的文件到本地仓库。

示例:

代码语言:shell
复制
git commit -m "Commit message"

5. git status

查看工作区、暂存区和本地仓库的状态。

示例:

代码语言:shell
复制
git status

6. git diff

显示工作区与暂存区或本地仓库之间的差异。

示例:

代码语言:shell
复制
git diff

7. git restore

撤销工作区的修改或恢复文件。

示例:

代码语言:shell
复制
git restore file.txt

8. git reset

重置暂存区或本地仓库的状态。

示例:

代码语言:shell
复制
git reset file.txt

分支管理

9. git branch

创建、列出或删除分支。

示例:

代码语言:shell
复制
git branch new_branch
git branch -a
git branch -d branch_name

10. git checkout

切换到指定分支或恢复文件。

示例:

代码语言:shell
复制
git checkout branch_name
git checkout -- file.txt

11. git merge

将指定分支的更改合并到当前分支。

示例:

代码语言:shell
复制
git merge branch_name

12. git rebase

将当前分支的更改移动到另一个分支上。

示例:

代码语言:shell
复制
git rebase branch_name

远程仓库

13. git remote

管理远程仓库。

示例:

代码语言:shell
复制
git remote add origin https://github.com/user/repo.git
git remote -v

14. git push

将本地仓库的更改推送到远程仓库。

示例:

代码语言:shell
复制
git push origin master

15. git pull

从远程仓库获取最新的更改。

示例:

代码语言:shell
复制
git pull origin master

16. git fetch

从远程仓库获取最新的分支和标签,但不合并到当前分支。

示例:

代码语言:txt
复制
```bash

git fetch origin

代码语言:txt
复制
### 17. git clone

克隆一个远程Git仓库到本地。

示例:

```bash

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

代码语言:txt
复制
### 18. git remote show

显示远程仓库的详细信息。

示例:

```bash

git remote show origin

代码语言:txt
复制
## 日志和历史

### 19. git log

显示提交日志。

示例:

```bash

git log

代码语言:txt
复制
### 20. git show

显示指定提交的详细信息。

示例:

```bash

git show commit_id

代码语言:txt
复制
### 21. git blame

显示文件的每一行是由哪个提交引入的。

示例:

```bash

git blame file.txt

代码语言:txt
复制
## 撤销与回退

### 22. git revert

撤销指定提交的更改。

示例:

```bash

git revert commit_id

代码语言:txt
复制
### 23. git reset

回退到指定提交,并丢弃后续的提交。

示例:

```bash

git reset commit_id

代码语言:txt
复制
### 24. git stash

保存当前工作目录的更改,并将其恢复到后续。

示例:

```bash

git stash

git stash pop

代码语言:txt
复制
## 标签管理

### 25. git tag

列出、创建或删除标签。

示例:

```bash

git tag

git tag tag_name

git tag -d tag_name

代码语言:txt
复制
### 26. git show-tag

显示标签的详细信息。

示例:

```bash

git show-tag tag_name

代码语言:txt
复制
### 27. git push --tags

将本地的所有标签推送到远程仓库。

示例:

```bash

git push --tags

代码语言:txt
复制
## 高级操作

### 28. git cherry-pick

选择指定的提交,并将其应用到当前分支。

示例:

```bash

git cherry-pick commit_id

代码语言:txt
复制
### 29. git bisect

使用二分查找定位引入 bug 的提交。

示例:

```bash

git bisect start

git bisect good commit_id

git bisect bad commit_id

代码语言:txt
复制
### 30. git rebase -i

交互式地修改提交历史。

示例:

```bash

git rebase -i commit_id

代码语言:txt
复制
## 忽略与排除

### 31. .gitignore

配置文件,指定不需要版本控制的文件或目录。

示例:

```bash

.gitignore 文件内容

file.txt

directory/

代码语言:txt
复制
### 32. gitignore.io

根据语言、编辑器或操作系统生成.gitignore文件。

示例:

```bash

gitignore.io java eclipse macos

代码语言:txt
复制
## 子模块

### 33. git submodule

管理子模块。

示例:

```bash

git submodule add https://github.com/user/repo.git

git submodule init

git submodule update

代码语言:txt
复制
## 全局配置

### 34. git config

配置全局的Git设置。

示例:

```bash

git config --global user.name "Your Name"

git config --global user.email "your@email.com"

代码语言:txt
复制
### 35. git config --list

列出当前的Git配置。

示例:

```bash

git config --list

代码语言:txt
复制
## 标签与注释

### 36. git tag -a

创建一个带有注释的标签。

示例:

```bash

git tag -a tag_name -m "Tag message"

代码语言:txt
复制
### 37. git tag -l

列出匹配指定模式的标签。

示例:

```bash

git tag -l "v1.*"

代码语言:txt
复制
### 38. git show

显示标签的详细信息。

示例:

```bash

git show tag_name

代码语言:txt
复制
### 39. git push origin --tags

将本地的所有标签推送到远程仓库。

示例:

```bash

git push origin --tags

代码语言:txt
复制
### 40. git push origin :refs/tags/tag_name

删除远程仓库的指定标签。

示例:

```bash

git push origin :refs/tags/tag_name

代码语言:txt
复制
## 忽略文件

### 41. .gitignore

创建一个用于忽略特定文件或目录的配置文件。

示例:

```bash

.gitignore 文件内容

file.txt

directory/

代码语言:txt
复制
### 42. git rm --cached

从版本控制中删除已经被添加的文件,但仍然保留在本地文件系统中。

示例:

```bash

git rm --cached file.txt

代码语言:txt
复制
### 43. git check-ignore

检查文件是否被.gitignore忽略。

示例:

```bash

git check-ignore -v file.txt

代码语言:txt
复制
## 子模块

### 44. git submodule add

添加子模块到当前仓库。

示例:

```bash

git submodule add https://github.com/user/repo.git

代码语言:txt
复制
### 45. git submodule init

初始化已存在的子模块。

示例:

```bash

git submodule init

代码语言:txt
复制
### 46. git submodule update

更新子模块到最新版本。

示例:

```bash

git submodule update

代码语言:txt
复制
### 47. git submodule foreach

对每个子模块执行指定的命令。

示例:

```bash

git submodule foreach git pull origin master

代码语言:txt
复制
## 全局配置

### 48. git config --global

设置全局的Git配置。

示例:

```bash

git config --global user.name "Your Name"

git config --global user.email "your@email.com"

代码语言:txt
复制
### 49. git config --list

列出当前的Git配置。

示例:

```bash

git config --list

代码语言:txt
复制
### 50. git config --global --edit

编辑全局的Git配置文件。

示例:

```bash

git config --global --edit

代码语言:txt
复制

总结

这些是50多个对所有人有用的Git命令,每个命令都附带了详细的示例,希望能够帮助您更好地理解和使用Git。通过逐步熟悉和练习这些命令,您将能够更加熟练地进行版本控制、分支管理、远程仓库操作以及其他高级操作。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 仓库创建与克隆
    • 1. git init
    • 2. git clone
  • 提交与修改
    • 3. git add
    • 4. git commit
    • 5. git status
    • 6. git diff
    • 7. git restore
    • 8. git reset
  • 分支管理
    • 9. git branch
    • 10. git checkout
    • 11. git merge
    • 12. git rebase
  • 远程仓库
    • 13. git remote
    • 14. git push
    • 15. git pull
    • 16. git fetch
  • .gitignore 文件内容
  • .gitignore 文件内容
    • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档