如何去使用git进行协同开发?

Git 是一种分布式版本控制系统,用于管理软件项目的源代码,使用 Git 可以追踪代码的历史修改记录,方便团队协作、代码共享和代码重构。

我们一般在使用git去协同开发之前,需要建议一个自己的仓库(repository),用于存储代码和版本历史记录。

上图是gitee创建仓库代码,流程如下:

  1. 创建目录

    复制代码
    mkdir smart-dbsystem
    cd smart-dbsystem
  2. 初始化 Git

    复制代码
    git init
  3. 新建 README.md(可选择)

    复制代码
    touch README.md
  4. 提交到本地

    在git有四块区域:

    bash 复制代码
    工作区(Working Directory)
            ↓ git add
    暂存区(Stage / Index)
            ↓ git commit
    本地仓库(Local Repository)
            ↓ git push          (把本地仓库 → 远程仓库)
    远程仓库(Remote Repository)

    我们写代码是在工作区,但 Git 不会直接把我们的乱涂乱改写进历史,那样历史会变成一锅乱炖,所以就需要有暂存区。而 add 的功能不是保存,而是挑选哪些文件提交、哪些文件不提交,像一个"筛选器",我们可以使用 git add 命令将更改的文件添加到 Git 的暂存区。

    而 git commit 的作用是将暂存区中的更改提交到 Git 仓库中,并生成一个新的版本号(commit hash)。

    bash 复制代码
    git add <file>
    git commit -m "描述信息"

    同样可以使用 git add . 命令去将所有变更添加到暂存区。

    如果需要撤销某个提交,可以使用 git revert 命令来创建一个新的提交,该提交将会抵消先前的提交效果。

  5. 绑定远程仓库

    复制代码
    git remote add origin https://gitee.com/eleven-lxs/smart-dbsystem.git
  6. 推送到 Gitee

    使用 git push 命令将本地代码推送到远程仓库:

    复制代码
    git push -u origin "master'

如果需要合并不同分支的代码,可以使用 git merge 命令进行合并;而要查看代码的历史提交记录,可以使用 git log 命令来获取详细信息;而想将代码从远程仓库中获取代码,可以使用 git pull命令将远程代码拉取到本地。如果想将Git存储库版本回退,请使用 git reset 命令。

下图展示了 git 命令的使用流程:

命令 发生位置 作用描述 从哪里 → 到哪里 使用时机
git add 工作区 → 暂存区(Index) 把修改加入暂存区,准备提交 workspace → index 当你修改了文件,想把它纳入下一次 commit
git commit 暂存区 → 本地仓库(Repository) 将暂存区内容形成一个新的版本快照 index → local repo 想记录一次可回滚的版本点时
git checkout 本地仓库 → 工作区 切换分支 / 切回某个版本 / 恢复文件 local repo → workspace(同步到 index) 想切分支、回退、查看旧版本内容时
git clone 远程仓库 → 本地仓库(第一次使用) 下载整个远程仓库,并自动建好工作区 remote → local repo + workspace 第一次下载某项目到本地时
git fetch 远程仓库 → 本地仓库(不更新工作区) 获取远程最新信息但不合并 remote → local repo 想先查看远程改动再决定是否合并
git pull 远程仓库 → 本地仓库 → 工作区 fetch + merge(自动更新工作区) remote → local repo → workspace 想同步远程最新代码时
git push 本地仓库 → 远程仓库 把本地提交推到远程,让别人也能看到 local repo → remote 你 commit 之后,想上传到远程平台时
相关推荐
Selicens1 小时前
git批量删除本地多余分支
前端·git·后端
闲云一鹤1 天前
Git LFS 扫盲教程 - 你不会还在用 Git 管理大文件吧?
前端·git·前端工程化
vibecoding日记4 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记4 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger5 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP6 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思6 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享6 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立6 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible