Git使用教程介绍
Git 是世界上最流行的版本控制系统 ( VCS ),因此,了解如何使用 Git 已成为编码领域的必备技能。
如何使用Git?在这个循序渐进的初学者指南中,你将学习如何开始有效地使用 Git。
什么是 Git,什么是 GitHub
Git 是一个免费的、开源的、分布式版本控制系统,可以处理各种规模的软件项目中的源代码更改。Git 允许多个开发人员轻松地在同一个项目上协同工作。
另一方面,GitHub 是一家提供基于云的存储库的公司,允许开发人员存储和管理他们的代码并跟踪和控制代码更改。你可以在没有 GitHub 的情况下使用 Git,但没有 Git 就不能使用 GitHub。
注意:在我们关于什么是 Git 的文章中更详细地了解 Git。要了解有关 git 工作流的更多信息,请阅读我们关于git 工作原理的文章。
Git 教程:如何使用 Git {初学者的分步指南}
按照以下步骤开始使用 Git。
第 1 步:安装 Git 并创建一个 GitHub 帐户
Git用法示例指南:你需要做的第一件事是安装 Git 并创建一个 GitHub 帐户。
有几种不同的方式来安装 Git。按照以下说明在你的系统上安装 Git:
- 在 Windows 上安装 Git
- 在 Mac 上安装 Git
- 在 Ubuntu 上安装 Git
- 在 CentOS 7 上安装 Git
- 在 CentOS 8 上安装 Git
注意:如果你的机器上已经安装了 Git,最好更新到可用的最新版本。
要更新 Git,请按照我们关于如何在 Windows、macOS 或 Linux 上更新 Git 的文章中的说明进行操作。
在你的机器上安装 Git 后,下一步是创建一个免费的 GitHub 帐户。
按着这些次序:
2. 选择一个用户名,输入你的电子邮件地址,然后选择一个密码。
3. 通过选中/取消选中电子邮件首选项复选框来选择或选择不接收更新和公告。
4. 通过解决Captcha谜题来验证你不是机器人。
5. 单击创建帐户。
6. GitHub 将启动代码发送到指定的电子邮件地址。将代码复制粘贴到指定字段中。
7. 或者,在询问或跳过时输入帐户个性化详细信息,然后点击继续。
你现在已经成功创建了一个 GitHub 帐户。
步骤 2:创建本地 Git 存储库
Git使用教程:安装或更新 Git 后,下一步是创建本地 Git 存储库。我们的文章详细解释了 Git 存储库是什么以及如何创建一个。
要创建 Git 存储库,请按照以下步骤操作:
1. 打开一个 Git Bash 终端并移动到你想在本地机器上保存项目的目录。例如:
cd ~/Desktop
mkdir myproject
cd myproject/
在此示例中,我们将目录更改为Desktop并创建了一个名为myproject的子目录。
2. 通过运行git init
命令在所选文件夹中创建一个 Git 存储库。语法是:
git init [repository-name]
现在你已成功创建本地 Git 存储库。
第 3 步:在 GitHub 上创建新存储库
GitHub 允许你在与团队合作并需要协作修改项目代码时跟踪代码。
如何使用Git?按照以下步骤在 GitHub 上创建新存储库:
1. 登录并浏览到 GitHub 主页。
2.在右上角的个人资料图片旁边的+号下找到新建存储库选项。
3. 为你的存储库输入名称,提供简要说明,然后选择隐私设置。
4. 单击创建存储库按钮。
GitHub 允许你添加你在本地创建的现有存储库。要将本地存储库从你的机器推送到 GitHub,请使用以下语法:
git remote add origin https://github.com/[your-username]/[repository-name.git]
git push -u origin master
例如:
步骤 4:将文件添加到存储库
Git使用教程:当你在包含 Git 存储库的文件夹中添加或修改文件时,Git 会发出通知,但除非得到指示,否则不会跟踪该文件。Git 仅保存它跟踪的文件的更改,因此你需要让 Git 知道你要跟踪特定文件的更改。
你可以通过运行以下命令来检查 Git 正在跟踪哪些文件:
git status
如果你有任何未跟踪的文件,Git 会通知你。如果你希望 Git 开始跟踪文件,请运行以下命令:
git add [filename]
例如:
在此示例中,我们指示 Git 开始跟踪test.txt文件的更改。重新运行该git status
命令显示 Git 正在跟踪指定的文件。
第 5 步:在 Git 上取消暂存文件
Git用法示例指南:使用 Git 通常需要将所有文件添加到你的索引中,以便为提交做好准备。如果要在提交之前从索引中删除某些文件,则必须在 Git 中取消暂存文件。
在 Git 上取消暂存文件的一种方法是运行git reset
命令。语法是:
git reset [commit] -- [file_path]
例如:
注意:你还可以使用该rm
命令在 Git 上取消暂存文件。
语法是:git rm --cached [file-name]
.
第 6 步:创建提交
将指定的文件添加到暂存环境后,使用git commit
命令指示 Git 将文件打包到提交中。Git 然后存储该文件版本。你可以在任何给定时间查看存储的版本。
语法是:
git commit -m "Notes about the commit"
在提交结束时添加一条消息,说明它是新功能、错误修复还是其他任何内容。提交保留在存储库中,很少被删除,因此对你更改内容的解释有助于其他开发人员在项目中工作或帮助你跟踪所有更改。
例如:
第 7 步:撤消上次提交
重要提示:Git 允许用户恢复上次提交。但是,其他开发人员可能已经检索到更新的项目,从一个系统中删除更新可能会导致其他团队成员发生冲突。
使用revert
和reset
命令撤消更改并恢复到以前的提交。
要撤消已发布的提交,请使用以下语法:
git revert [hash]
哈希是标识每个提交的代码。通过运行获取提交哈希:
git log
例如:
在这个例子中,我们首先运行git log
命令来获取提交哈希,然后通过运行git revert
我们获得的提交哈希来恢复最后一次提交。
第 8 步:创建一个新分支
如何使用Git?git 存储库中的第一个分支称为 master,它是项目中的主分支。
创建新的 Git 分支意味着从特定时间点创建项目的副本。Git 中的分支允许用户在功能开发时无需将更改应用到主分支即可创建新功能。
创建新分支的常用方法是运行:
git branch [new_branch_name]
例如:
在这个例子中,我们创建了一个名为new-feature的新分支。
第 9 步:切换分支
Git使用教程:Git 项目的多个分支为开发人员提供了一个测试环境,可以在不影响应用程序生产版本的情况下跟踪进度。Git 允许你使用命令轻松地在分支之间切换checkout
。语法是:
git checkout [branch_name]
替换[branch_name]
为你要访问的分支名称。
例如:
步骤 10:重命名本地或远程 Git 分支
在 Git 中,你可以重命名本地或远程 Git 分支。
更改本地Git 分支名称的语法是:
git branch -m new-name
例如:
在本例中,我们将本地分支名称从new-feature更改为feature-testing。
由于没有直接重命名远程 Git 分支的方法,你首先需要删除旧分支名称,然后将新分支名称推送到远程存储库。
步骤 11:删除本地或远程 Git 分支
Git用法示例指南:在将更改与 master 分支合并后或者如果分支损坏,你可能决定删除 Git 分支。
你可以删除本地和远程 Git 分支。
删除本地分支不会影响远程分支。要删除本地Git 分支,请运行:
git branch -d [branch_name]
使用以下语法删除远程Git 分支:
git push [remote_project] --delete [branch_name]
在这个例子中,我们删除了一个本地 Git 分支:
第 12 步:设置上游分支
在 Git 中向上游发送内容意味着你将其发送回存储库所有者。
使用该git set upstream
命令,你可以选择当前本地分支的流向。该命令还允许你更改默认的远程分支。
我们关于什么是 Git 上游以及如何设置上游分支的教程涉及设置上游分支的不同方法,并对该主题进行了详细说明。
第 13 步:删除 Git 遥控器
git remote 是与托管在远程服务器上的存储库的连接——GitHub、BitBucket、GitLab 或任何其他远程位置。
但是,随着时间的推移,远程存储库可能会移动到另一个主机,或者团队成员可能会停止处理该项目。然后不再需要有问题的遥控器。
有多种方法可以删除 Git 远程。其中一种方法是使用命令行删除远程。语法是:
git remote remove [remote name]
在以下示例中,运行git remote -v
显示可用的遥控器,“origin”和“test-remote”。删除“test-remote”并重新运行git remote -v
以列出可用的遥控器后,我们看到唯一可用的遥控器是“origin”。
第 14 步:Git 合并
Git merge 将多个提交序列统一为一个提交。它可以合并两个分支,从而将独立的开发线整合为一个分支。
如何使用Git?合并两个分支后,Git 更新当前分支以反映合并,但不影响目标分支。这意味着你必须使用该git branch -d
命令来删除过时的目标分支。
例如,你可能希望将新功能分支合并到主分支中。请按照以下步骤操作:
1. 运行git status
命令以确保 HEAD 指向正确的合并接收(主)分支。如果不是,运行git checkout master
切换到master分支。
2. 运行git fetch
以拉取最新的远程提交并git pull
确保主分支具有最新更新。
3. 运行git merge X
whereX
是要合并到接收分支的分支的名称。
第 15 步:解决合并冲突
Git使用教程:合并冲突通常发生在多个开发人员处理一个项目的相同代码时,或者当他们使用多个开发分支时。Git merge 会警告用户这些冲突。
尽管大多数合并冲突会自动解决,但有时 git merge无法解决问题。
注意:我们关于如何解决 Git 中的合并冲突的详细指南提供了防止合并冲突的技巧,以及解决现有合并冲突的方法。
第 16 步:创建拉取请求
创建拉取请求 (PR) 以通知存储库所有者他们应该审查你对其代码所做的更改。然后所有者可以批准拉取请求并将更改合并到主存储库中。
如果你是仓库的共同所有者或所有者,则不必创建拉取请求来合并你的更改。但是,你仍然可以这样做来跟踪你的功能更新和历史记录。
对于本指南,我们将在本地为我们的存储库创建一个自述文件,并在 GitHub 上发出拉取请求以说明该过程。
Git用法示例指南:请按照以下步骤操作:
1. 在Git Bash 中,通过运行创建一个空的自述文件touch readme.md
。
2. 创建并切换到要修改文件的新分支。跑:
git checkout -b create-readme-file
3. 在文本编辑器中打开自述文件并添加你希望它包含的文本。在本例中,我们将使用Nano 文本编辑器在命令行窗口中修改文件。运行nano readme.md
。
注意:查看我们的22 个最佳 Linux 文本编辑器列表。
4. 保存文件后,通过运行跟踪它git add readme.md
。
5. 创建提交。
git commit -m "Added a readme file"
6. 将更改推送到 GitHub。
git push origin create-readme-file
7. 登录到你的 GitHub 页面。现在你的存储库中有一个Create pull request选项,其分支名称是我们在命令行中创建的。单击比较和拉取请求按钮。
8. GitHub 说明你是否可以合并分支并应用更改。或者,添加关于你的拉取请求的评论,然后单击创建拉取请求。
现在,存储库所有者(在本例中为你)可以查看更改并接受或拒绝更改。
你可以在 GitHub 上的拉取请求选项卡中接受更改。合并分支时,通过单击删除分支来删除过时的分支以保持存储库清洁。
第 17 步:在 GitHub 和本地同步更改
如何使用Git?当你在 GitHub 上合并更改时,它们不会自动出现在你的本地存储库中。你必须将更改拉到本地存储库才能查看更新。
通过运行以下命令将本地存储库与 GitHub 同步:
git pull origin master
该命令更新你的本地存储库以匹配 GitHub 上的存储库,并说明更改。
在下面的例子中,我们首先切换到我们的 master 分支,Git 警告我们应该更新我们的本地存储库:
Git用法示例指南结论
你现在了解了基本的和一些更高级的 Git 函数。随意测试它们以确保你了解它们的工作原理。
下载我们的Git 命令备忘单,将所有 Git 命令放在一处以备将来使用。