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

相关推荐
江畔柳前堤17 小时前
第13章:docker生产环境部署实战
运维·git·docker·容器·代码复审
GuHenryCheng20 小时前
【ESP32】ESP-IDF开发环境搭建(cursor)
git·stm32·单片机·学习
kaka。。21 小时前
GIT安装+代码推送
git
明理的路灯21 小时前
安装 git 开发工具
git
偏爱自由 !1 天前
5:IDEA中git的使用--git fetch 和 git pull 和解决冲突
git·elasticsearch·intellij-idea
偏爱自由 !1 天前
2:IDEA中git的使用--基础操作
java·git·intellij-idea
青山木2 天前
快速搭建免费的个人博客网站:Hexo + GitHub Pages + Butterfly 完整指南
git·github
江畔柳前堤2 天前
第16章:docker企业级实战综合项目
运维·git·安全·docker·容器·eureka
偏爱自由 !2 天前
一(0.1):配置git
java·git·intellij-idea
江畔柳前堤2 天前
第11章:Docker 安全加固
运维·git·安全·docker·容器·eureka·github