Git版本控制与协作

一、Git 基础概念

1.版本控制系统(VCS):Git 是一种分布式版本控制系统。他能追踪文件的变化,记录项目的每一个版本。

2.仓库:存储项目所有文件和版本历史的文件夹。

(1)本地仓库:位于本地电脑上的项目副本。

(2)远程仓库:位于服务器上的项目副本,通常是 GitHub、GitLab 等平台。

3.工作区:正在编辑的本地文件目录。

4.暂存区:一个中间区域,用于存放下一次提交的内容。

5.提交:将暂存区的内容正式保存到本地仓库,形成一个版本。每一次提交都有一个唯一的哈希值和一段描述信息。

二、基本操作

  1. git init:在你的项目文件夹中初始化一个本地 Git 仓库。

  2. git status:查看工作区和暂存区的状态。这个命令能告诉哪些文件被修改了,哪些文件可以被提交。

  3. git add <文件名>:将工作区的修改添加到暂存区。

4.git commit -m "提交信息":将暂存区的内容提交到本地仓库,并附上清晰的提交信息。

5.示例

(1) git init:创建一个新仓库。

(2)修改文件

(3) git status:查看修改。

(4) git add .:将修改添加到暂存区。

(5) git commit -m "完成新功能":提交修改。

三、分支和合并

  1. git branch:查看本地所有分支。

  2. git checkout <分支名>:切换到指定的分支。

  3. git checkout -b <新分支名>:创建并切换到新分支。

  4. git merge <分支名>:将指定分支的修改合并到当前分支。

5.示例

(1)git check main:确保你在主分支。

(2) git pull:拉取远程最新代码,保证本地代码是最新的。

(3)git check -b feature-a:创建一个名为 feature-a 的新分支。

(4)在 feature-a 分支上开发新功能,并多次提交。

(5)git checkout main:切换回主分支。

(6)git merge feature-a:将 feature-a 分支的修改合并到 main 分支。

四、远程仓库操作

1.git remote:管理远程仓库。

(1) git remote -v:查看当前仓库关联的远程仓库。

(2) git remote add origin <远程仓库 URL>:将本地仓库与一个远程仓库关联起来。origin 是默认的远程仓库名称。

2.git push:将本地提交推送到远程仓库。

(1)git push -u origin main:第一次推送时,需要使用-u 参数将本地的 main 分支与远程的 main 分支关联起来。

(2)git push:之后只需要简单地执行 git push 即可。

3.git pull:将远程仓库的最新代码拉取到本地仓库

(1)git pull origin main:拉取远程 origin 仓库的 main 分支

(2)git pull:如果已设置跟踪分支,可以直接使用 git pull。

五、GitHub工作流

1.克隆仓库:团队成员通过 git clone 将项目从 GitHub 克隆到本地。

2.创建新分支:每个成员为新功能或修复创建一个独立的分支。

git checkout -b feature-a

3.开发并提交:在新分支上进行开发,并多次提交(git add -> git commit)。

4.推送分支:将自己的新分支推送到 GitHub。

git push origin feature-a

5.创建拉取请求:在 GitHub页面上,为此分支创建一个拉取请求(PR)。

(1)PR 是一个协作和代码审查的平台。团队成员可以在 PR 中审查代码、提意见、讨论问题。

6.合并代码:审查通过后,将 PR 合并到主分支(通常是 main 或 dev)。

7.删除分支:合并后,可以删除远程和本地的分支。

相关推荐
军军36021 分钟前
Git大型仓库的局部开发:分步克隆 + 指定目录拉取
前端·git
间彧1 小时前
Git命令速查表
git
用户2519162427113 小时前
Git原理分析
前端·javascript·git
百思可瑞教育16 小时前
Git 对象存储:理解底层原理,实现高效排错与存储优化
大数据·git·elasticsearch·搜索引擎
Bitup_bitwin18 小时前
Git智能合并机制深度解析
git
TeleostNaCl1 天前
OpenWrt 编译 | 一种使用 git submodule 方式实现一键更新多个外部软件包
网络·经验分享·git·智能路由器
Cosmoshhhyyy2 天前
mac环境下安装git并配置密钥等
git·macos
yuwei0212 天前
git大全解
git
小林的技术分享2 天前
版本控制系统-Git 学习 《progit》电子书学习记录 第一章 (仅隔个人学习记录用)
git