Git 的正确使用姿势与最佳实践:团队协作和版本控制的最佳实践
介绍
以下为完成多人协作开发和git的简单使用
一、提前准备
- 安装Git
- 注册GitHub账号 安装和注册过程就不过多介绍,大家可自行查找资料。 本次笔记会使用Goland介绍如何使用git提交代码到GitHub
二、Git 的简单使用
Git 基础
Git是一个分布式版本控制系统,它允许您在本地创建一个代码仓库,并将其同步到远程服务器上。在使用Git之前,您需要先安装Git,并配置您的Git用户名和电子邮件地址。
Git 基本命令
以下是一些基本的Git命令
git init: 在当前目录下创建一个新的Git仓库。git clone: 从远程服务器上克隆一个Git仓库到本地。git add: 将文件添加到Git仓库的暂存区。git commit: 将暂存区中的文件提交到Git仓库。git push: 将本地Git仓库中的代码推送到远程服务器上。git pull: 从远程服务器上拉取最新的代码。
Git分支
Git允许您在同一个Git仓库中创建多个分支,每个分支都可以独立地进行开发。以下是一些常用的Git分支命令:
git branch: 列出当前所有的分支。git checkout: 切换到指定的分支。git merge: 将指定分支的代码合并到当前分支中。git rebase: 将当前分支的代码变基到指定分支上。
Git 协作
Git是一个非常适合团队协作的版本控制系统。以下是一些常用的Git协作命令:
git fetch: 从远程服务器上拉取最新的代码。git merge: 将远程分支的代码合并到本地分支中。git push: 将本地分支的代码推送到远程服务器上。
三、Git和GitHub
由于你的本地 Git 仓库和 GitHub 仓库之间的传输是通过SSH加密的,所以我们需要配置验证信息:
使用以下命令生成 SSH Key:
ssh-keygen -t rsa -C "youremail@example.com"
后面的 your_email@youremail.com 改为你在 Github 上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。
成功的话会在 ~/ 下生成 .ssh 文件夹,进去,打开 id_rsa.pub,复制里面的 key
如图:
成功的话会在 ~/ 下生成 .ssh 文件夹,进去,打开 id_rsa.pub,复制里面的 key。
默认会在自己c盘用户文件夹中找到:
回到 github 上,进入 Account => Settings(账户配置)。
左边选择 SSH and GPG keys,然后点击 New SSH key 按钮,title 设置标题,可以随便填,粘贴在你电脑上生成的 key。
为了验证是否成功:
$ ssh -T git@github.com
Warning: Permanently added 'github.com,52.74.223.119' (RSA) to the list of known hosts.Hi tianqixin! You've successfully authenticated, but GitHub does not provide shell access. # 成功信息
至此我们成功连接了GitHub。
Git的简单案例
在GitHub中创建一个新仓库,步骤在此不过多描述。
按照其描述的步骤:
以上信息告诉我们可以从这个仓库克隆出新的仓库,也可以把本地仓库的内容推送到GitHub仓库。
现在,我们根据 GitHub 的提示,在本地的仓库下运行命令:
$ mkdir test # 创建测试目录
$ cd test/ # 进入测试目录
$ echo "# text" >> README.md # 创建 README.md 文件并写入内容
$ ls # 查看目录下的文件
README
$ git init # 初始化
$ git add README.md # 添加文件
$ git commit -m "添加 README.md 文件" # 提交并备注信息
[master (root-commit) 0205aab] 添加 README.md 文件
1 file changed, 1 insertion(+)
create mode 100644 README.md
# 提交到 Github
$ git remote add origin git@github.com:Yfanx/test.git #你的GitHub仓库地址
$ git push -u origin master
接下来我们返回 Github 创建的仓库,就可以看到文件已上传到 Github上。 这就是Git上传文件到GitHub的一个简单实践。
Goland实现多人协作
克隆代码
1、通过邮箱验证通过加入多人协作
2、获取远程仓库的URL
3、克隆仓库
指定工作路径,打开Git Bash
输入指令git clone URL #上一步获取的URL.
拉取分支
当进行代码开发和协作时,使用版本控制系统(如 Git)可以帮助您管理代码的变化。以下是关于在一个项目中拉取、创建、提交和推送分支的详细步骤,使用Markdown格式进行说明:
1. 拉取最新代码
在开始新的开发之前,请确保您的本地主分支是最新的。使用以下命令从远程主分支拉取最新代码:
# 切换到主分支
git checkout main
# 拉取主分支最新代码
git pull origin main
2. 创建本地分支
创建一个新的分支,以便您可以在上面进行开发。使用以下命令创建一个新分支,分支名字为您的模块名:
git checkout -b chart
3. 创建远程分支
为了使远程分支和本地分支名称一致,您需要将本地分支推送到远程仓库。使用以下命令创建一个与本地分支名相同的远程分支:
git push origin chart
4. 添加和提交更改
将您所做的更改添加到暂存区,并提交到本地分支:
# 添加更改
git add .
# 提交更改
git commit -m "Add chart"
5. 推送到远程分支
将您的本地分支推送到在 GitHub 上创建的远程分支:
git push origin chart
以上步骤将确保您在一个新的分支上进行开发,并将你的更改提交到该分支。其他团队成员可以在远程分支上查看您的更改,从而实现协同开发。
请确保在操作Git命令时,您已经在项目的根目录下,并且已经设置了正确的远程仓库地址。这些步骤将帮助您在项目中有效地管理分支和协同开发。
建立分支
以下是Goland方法(我使用的是新UI)
1、打开设置,打开版本控制
选择Git
一般来说他会自动检测你下载的git
选择Github
登录自己的账号。
点击工具栏中的Git,点击更新拉取最新代码
上游文件可以改成main主分支
当您需要从主分支(通常为main分支)拉取最新代码并更新您的分支时,您可以选择使用合并或变基的方法。
合并(Merge)
合并操作会将两个分支的更改合并成一个新的合并提交。这种方法保留了分支的独立历史,对于团队合作和共享分支非常直观和易于理解。合并适用于以下情况:
- 共享分支,多人协作开发
- 保留每个分支的独立开发历史
变基(Rebase)
变基操作会将您的分支应用于上游分支的最新提交,从而产生一个更线性、干净的提交历史。变基后的提交 SHA 值会改变,这可能会影响其他开发者的分支,因此需要谨慎处理。变基适用于以下情况:
- 个人分支,希望保持提交历史的整洁
- 将您的分支更新到上游分支的最新状态
如何选择
-
如果是团队合作,多人共享分支,且希望保留每个分支的独立历史,建议选择合并。这对于协作和团队沟通更为方便。
-
如果您的分支是个人分支,或者您想要一个更加线性、整洁的提交历史,可以选择变基。但请注意,变基可能会对其他开发者的分支产生影响,因此需要小心使用。
总之,合并适用于大多数团队合作场景,而变基则更适用于个人分支和需要保持提交历史整洁的情况。
在进行合并或变基操作之前,请确保您已经保存并提交了当前分支的所有更改,以避免意外丢失代码。
提交测试
点击Git中的commit(提交)
一定要完善自己的提交信息,一定要详细。
推送到团队的远程仓库
使用 git push 命令将您的提交推送到远程仓库。如果是第一次推送,需要指定远程仓库的名称(通常为 origin)和分支名称。
以上就是Git的简单使用与实践。 最后给大家推荐一个Git的使用小游戏Learn Git Branch