Git 的正确使用姿势与最佳实践:团队协作和版本控制的最佳实践 | 青训营

51 阅读5分钟

前言

在当今的互联网行业中,软件程序的开发往往是多人合作的团队项目,团队代码的管理和版本控制成为了项目成功的关键所在。Git作为辅助开发者管理代码的分布式版本控制系统,被广泛的应用在互联网业界绝大多数的项目中。因此,熟练使用Git在团队开发中管必代码是每一位程序员必要的能力。

本篇文章面向的是从未接触过Git也没有任何团队开发经验的“萌新”,我将会结合自己在团队项目中使用Git的经验和网络知识,帮助各位快速了解Git的基本操作,掌握使用Git管理团队代码的基础能力。

Git的安装和配置

Git可以直接通过Git官网安装下载,具体的安装流程这里不作详细介绍,各位按照官网教程即可。 Git - 安装 Git (git-scm.com)

在完成安装后,我们需要先配置用户名和邮箱。在Git中,用户名和邮箱作为标识用于在提交代码时标识提交者。我们可以通过git config命令配置这些信息,如下所示:

git config --global user.name "Name"
git config --global user.email "Email@example.com"

注意:使用globle参数意味着当前配置为全局配置,即当前机器上的所有Git仓库都将采用这一配置。当我们需要为特定仓库配置特殊的用户名和邮箱时,我们只需要将globle去掉在仓库内重新输入命令配置用户名和邮箱即可。

当然,我们可以根据自己的需要设置Git的一些其他配置,例如添加代理。git config --list命令可以帮助我们查看Git的所有配置。

Git的使用

1. 创建仓库

使用Git的第一步是创建一个版本库,也叫仓库。那么什么是仓库呢?我们可以简单的理解成一个目录,目录中的所有文件都受到Git管理,目录下存储了项目的所有文件、历史记录和配置信息。我们可以通过git init命令在当前目录下创建新的Git仓库。下面是我在本地机器上运行的示例:

PS D:\PyCharm\pythonProject4> git init
Initialized empty Git repository in D:/PyCharm/pythonProject4/.git/

2. 添加和提交

当我们希望向Git仓库添加文件或修改文件时,我们就需要用到git addgit commit命令。我们先通过git add命令将新文件或原有文件中的修改添加到暂存区,再使用git commit命令一次性将所有更改提交到仓库。

//当我们希望向暂存区添加txt文件时
git add filename.txt

//一次性将Git仓库目录下的所有文件的修改都添加到暂存区
git add .

//将修改提交到版本库,我们可以在提交时添加注释
git commit -m "message"

注意:添加新文件时(以filename.txt为例),新文件必须在Git仓库的目录下存在,git add命令不具备从其他目录直接copy文件添加到暂存区或直接新建文件的能力。

我们可以使用git status命令查看提交的状态,确认是否还有更新没有提交到版本库。

3. 推送和拉取

当我们在本地完成了全部的更新后,我们可以使用git push命令将我们的更新推送到远程仓库,与团队中的其他人分享。远程仓库是一个网络仓库,通常托管在GitHub等网络平台上。代码示例如下:

git push origin master

代码中的origin是默认的远程仓库名,可以修改,而master则是代码的主分支,我们将在接下来的内容中介绍与分支有关的内容。

我们既然可以向远程仓库推送更新,当然也可以从远程仓库获取更新,即通过git pull命令将远程仓库的更新拉取到本地的版本库中,代码如下:

git pull origin master

4. 创建、切换、合并和删除分支

分支(branch)是Git中的核心概念之一,其最大的作用便是在不影响代码主分支的情况下支持开发者创建独立的代码环境以实现新功能和修复代码问题。我们可以创建多个分支并随时在分支中切换,在完成任务后,我们可以通过合并分支的方法将修改同步到主分支并删除分支,其代码如下图所示:

//新建分支并命名为newbranch
git branch newbranch

//查看所有分支
git branch
* master
  newbranch

//切换分支
git checkout new branch
Switched to branch 'newbranch'

//将newbranch合并到master
git checkout master
git merge newbranch

//删除分支
git branch -d newbranch

5. 克隆

除了通过git init命令创建仓库,我们还可以通过git clone命令将一个远程Git仓库拷贝到本地,复制远程仓库的所有代码和历史记录,并在本地创建一个与远程仓库相同的仓库副本。我们可以查看该仓库内的文件并修改,其代码如下所示:

git clone 远程仓库地址(URL)

远程仓库地址可以通过代码管理平台获取。