Git 新手必备:一文带你了解基础 Git 命令
2023-10-07 09:03:27
初识 Git
Git 是一个分布式版本控制系统,它允许你跟踪代码库中的更改并轻松地协作。与其他版本控制系统不同,Git 不依赖于中央服务器,而是将代码库的完整副本存储在每个开发者的本地计算机上。这使得 Git 非常适合分布式团队和离线工作。
基本 Git 命令
1. 初始化一个新的代码库
要初始化一个新的代码库,只需在你的项目目录中运行以下命令:
git init
这将在你的项目目录中创建一个名为 .git
的隐藏目录。这个目录包含了 Git 所需的所有文件,包括一个名为 HEAD 的指针,它指向当前分支。
2. 添加和提交更改
要将更改添加到你的暂存区,可以使用以下命令:
git add <file>
这将把指定的文件添加到暂存区。暂存区是 Git 用于跟踪已更改文件的临时区域。要提交暂存区中的更改,可以使用以下命令:
git commit -m "<commit message>"
这将把暂存区中的更改提交到本地代码库。提交信息是可选的,但强烈建议你提供一个简短的提交信息,以帮助你以后了解提交的内容。
3. 查看提交历史记录
要查看提交历史记录,可以使用以下命令:
git log
这将显示一个提交列表,其中包括提交信息、提交者姓名和提交日期。你还可以使用以下命令查看更详细的提交历史记录:
git log --pretty=full
这将显示每个提交的完整提交信息。
4. 创建分支
要创建分支,可以使用以下命令:
git branch <branch-name>
这将在当前提交上创建一个名为 branch-name 的新分支。要切换到新分支,可以使用以下命令:
git checkout <branch-name>
这将把你的工作目录切换到指定的分支。
5. 合并分支
要合并分支,可以使用以下命令:
git merge <branch-name>
这将把指定的分支合并到当前分支。如果两个分支之间存在冲突,Git 将会提示你解决冲突。
6. 解决冲突
如果两个分支之间存在冲突,Git 将会在冲突的文件中创建一个名为 .git/conflicts 的目录。在这个目录中,你会找到一个名为冲突标记的文件。冲突标记文件包含了冲突的详细信息。要解决冲突,你需要手动编辑冲突文件,然后使用以下命令提交更改:
git add <conflict-file>
git commit -m "<commit message>"
7. 推送更改
要将你的更改推送到远程代码库,可以使用以下命令:
git push <remote-name> <branch-name>
这将把指定的分支推送到远程代码库。远程代码库是存储在中央服务器上的代码库。
高级 Git 命令
1. 变基
变基是一种重写提交历史记录的技术。它允许你重新组织你的提交,以便它们更易于理解或维护。要变基,可以使用以下命令:
git rebase <base-branch>
这将把当前分支的提交变基到指定的基本分支。
2. 远程跟踪分支
远程跟踪分支是远程代码库中分支的本地副本。要创建远程跟踪分支,可以使用以下命令:
git remote add <remote-name> <remote-url>
git fetch <remote-name>
git branch --track <local-branch-name> <remote-branch-name>
这将创建一个名为 local-branch-name 的新分支,它跟踪远程代码库中名为 remote-branch-name 的分支。
3. 拉取请求
拉取请求是一种将你的更改合并到远程代码库中的方法。要创建拉取请求,你需要先创建一个分支,然后将你的更改推送到这个分支。然后,你可以在远程代码库中创建一个拉取请求,将你的更改合并到远程代码库的主分支中。
4. 冲突解决
如果两个分支之间存在冲突,Git 将会在冲突的文件中创建一个名为 .git/conflicts 的目录。在这个目录中,你会找到一个名为冲突标记的文件。冲突标记文件包含了冲突的详细信息。要解决冲突,你需要手动编辑冲突文件,然后使用以下命令提交更改:
git add <conflict-file>
git commit -m "<commit message>"
5. 检出特定提交
要检出特定的提交,可以使用以下命令:
git checkout <commit-id>
这将把你的工作目录切换到指定的提交。