Git 是一个分布式版本控制系统,它提供了许多命令来管理项目的版本。以下是一些 Git 的常用命令及其基本功能:
- **初始化仓库**
* `git init`:在当前目录下创建一个新的 Git 仓库。
- **配置**
* `git config --global user.name "Your Name"`:设置全局用户名。
* `git config --global user.email "your_email@example.com"`:设置全局邮箱地址。
* `git config --list`:列出所有 Git 配置。
- **查看状态**
* `git status`:查看工作区和暂存区的状态。
- **添加文件到暂存区**
* `git add <file>`:将文件添加到暂存区。
* `git add .`:将当前目录下的所有更改添加到暂存区。
- **提交更改**
* `git commit -m "Commit message"`:将暂存区的更改提交到本地仓库,并附带一条消息。
- **查看提交历史**
* `git log`:查看提交历史。
* `git log --oneline`:以简化的形式查看提交历史。
* `git log --graph --all --decorate`:以图形化的方式查看提交历史,包括分支和标签。
- **撤销更改**
* `git checkout -- <file>`:撤销工作区中对文件的更改。
* `git reset HEAD <file>`:撤销暂存区中对文件的更改。
* `git revert <commit>`:创建一个新的提交来撤销之前的某个提交。
- **分支管理**
* `git branch`:列出所有分支。
* `git branch <branch-name>`:创建一个新分支。
* `git checkout <branch-name>`:切换到指定分支。
* `git merge <branch-name>`:将指定分支合并到当前分支。
* `git branch -d <branch-name>`:删除一个分支(仅当该分支已合并到当前分支时)。
* `git branch -D <branch-name>`:强制删除一个分支(无论是否已合并)。
- **远程仓库**
* `git remote -v`:查看远程仓库的信息。
* `git remote add origin <url>`:添加远程仓库。
* `git fetch origin`:从远程仓库获取最新数据到本地(不自动合并)。
* `git pull origin <branch-name>`:从远程仓库拉取数据并合并到本地分支。
* `git push origin <branch-name>`:将本地分支的更改推送到远程仓库。
- **标签管理**
* `git tag`:列出所有标签。
* `git tag <tag-name>`:为当前提交创建一个标签。
* `git show <tag-name>`:查看标签的详细信息。
* `git tag -d <tag-name>`:删除一个标签。
- **其他常用命令**
* `git diff`:查看工作区与暂存区、暂存区与最新提交之间的差异。
* `git stash`:将当前工作区的内容暂存起来,以便稍后恢复。
* `git clone <url>`:克隆远程仓库到本地。
* `git rm <file>`:从版本控制中删除文件。
* `git mv <old-name> <new-name>`:重命名文件或目录。
这些命令是 Git 的基础,但 Git 的功能远不止于此。通过组合和扩展这些命令,你可以执行更复杂的版本控制操作。