git 版本控制与协同开发

文章目录

版本控制

历史阶段

  • cvs 第一代 集中式
  • svn 第二代 sub version 子版本 集中式
  • git 第三代 分布式,非集中式

扩展:

  • 分布式技术
  • 并行机器(超级计算机)
  • 集群

git 的工作流程

scm 软件配置管理

www.git-scm.com

仓库:一个文件夹,git 会追踪文件夹中文件的变化,对部分文件做差异化记录

仓库三个状态

  • 干净 clear
  • 改变、增加 未追踪的文件
  • 缓冲区

git init // 初始化仓库

git add // 将变化的内容加入缓冲区

git commit // 提交,记录改变

git status // 查看当前状态

git log // 查看日志

git checkout // 检出

git tag // 标签

git checkout id

git checkout master

git branch

git clone

tag主要用来标记历史版本,而branch可以独立地包含项目历史的一部分,是主分支分出的"平行空间"

协同开发

开放的平台

个人仓库

shell 复制代码
    mkdir code
    cd code
    # 初始化为仓库
    git init
    # 添加到缓冲区,为了提交
    git add *
    # 提交,存档,差异化备份存储
    git commit -m "描述信息"
    # 
    git log
    # 检出,回到历史版本
    git checkout id
    # 标签
    git tag 0.1
    # 分支
    git branch
    # 创建分支 f1
    git branch f1
    # 进入分支 f1
    git checkout f1
    # 进入主线
    git checkout master
    # 把分支 f1 合并到主线
    git merge f1
    # 

远程仓库

托管平台:github, gitee, sf, google code, gitlab

shell 复制代码
    # 直接创建远程仓库
    # 把本地仓库分享到原创
    # 克隆,把仓库从远程下载到本地
    git clone url
    # folk 创建仓库的一个分支
    # 往本地拉取最新的提交信息,本地同步信息远程仓库的信息
    git pull/fetch
    # 把本地的提交同步到远程服务器
    git push
    # pull request

团队协同开发

  1. 创建组织
  2. 邀请成员
  3. 创建组织中的仓库
  4. 给仓库添加开发者
  5. 把远程仓库克隆到本地
  6. 进行文件编辑
  7. 本地提交:git add, git commit
  8. 同步到远程:先 pull 再 push

git rebase

git rebase 等价于

git pull --no-rebase

git push

git pull

git push

相关推荐
CoderJia程序员甲1 小时前
GitHub 热榜项目 - 日榜(2026-02-08)
git·ai·开源·llm·github
Serene_Dream2 小时前
git 常用命令
git
jiayong233 小时前
Detached HEAD 状态详解
git
李少兄12 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea
先跑起来再说18 小时前
Git 入门到实战:一篇搞懂安装、命令、远程仓库与 IDEA 集成
ide·git·后端·elasticsearch·golang·intellij-idea
承渊政道21 小时前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
Doro再努力21 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
摇滚侠1 天前
MAC IDEA GIT 提交区显示了几个不存在的目录
git·idea
城东1 天前
Git使用[远程仓库远端的head比本地和提交的head旧,其他人拉不到最新代码]
git·head·远程仓库远端·比本地和提交的head旧·其他人拉不到最新代码
何中应1 天前
使用SSH地址拉取远程仓库代码报下面的错误
git