git协同开发流程

git切换分支并提交代码完整步骤

  • 步骤 1: 更新本地 master 分支(确保同步)

    git checkout master  # 切换到 master 分支(如果不在)
    git pull origin master  # 从远程拉取最新代码
  • 步骤 2: 创建并切换到新分支

    git checkout -b feature-new-version  # 创建新分支并立即切换(只有第一次这么执行)

    检查:运行 git branch,看到 * feature-new-version(星号表示当前分支)
    如果已经执行过,则执行

    git checkout feature-new-version
  • 步骤 3: 在新分支上修改代码并提交

    git status
    git add .  # 添加所有变更,或 git add <具体文件>
    git commit -m "添加新版本功能:描述你的变更"
  • 步骤 4: 推送到远程仓库的新分支

    git push origin feature-new-version

    git push origin <分支名>:推送本地分支到远程(origin 是远程仓库别名)
    检查:运行 git branch -r,看到 origin/feature-new-version

  • 步骤 5: 在 GitHub 上创建 Pull Request (PR) 合并到 master

    • GitHub 会自动检测新分支,点击 "Create pull request"

      • 标题:如 "添加新版本功能"
      • 描述:详细说明变更、测试结果

      • 源分支:feature-new-version → 目标分支:master

    • 点击 "Create pull request"

    • 审核与合并:

      • 如果你是仓库主人,直接点击 "Merge pull request" > "Confirm merge"

      • 合并后,远程 master 更新

      • 可选:删除新分支("Delete branch"),保持仓库干净

  • 步骤 6: 更新本地 master(同步远程合并)

    git checkout master
    git pull origin master

    现在本地 master 与远程一致

    可删除本地新分支(可选):git branch -d feature-new-version

步骤:

  • 协同开发流程

    #!/bin/bash
    # ==============================================
    # Git 单次开发流程指南(含 merge/reflog/分支查看)
    # ==============================================
    
    # 1. 克隆仓库(若尚未克隆)
    git clone https://github.com/username/repo.git
    cd repo
    
    # 2. 查看所有分支(确认初始状态)
    echo "当前分支状态:"
    git branch -a  # 本地分支带`*`,远程分支以`remotes/`开头
    
    # 3. 基于 master 创建开发分支
    git checkout -b feature/single-feature
    echo "已创建并切换到分支 feature/single-feature"
    
    # 4. 模拟开发:修改文件并提交
    echo "console.log('New feature');" >> script.js
    git add script.js
    git commit -m "Add new feature"
    
    # 5. 推送到远程(首次需 -u)
    git push -u origin feature/single-feature
    echo "已推送分支到远程"
    
    # 6. 提交 PR/MR 后,管理员合并到 master
    # ----------- 以下是合并后的操作 -----------
    
    # 7. 切换回 master 并同步最新代码
    git checkout master
    git pull origin master  # 自动合并远程变更(含你的PR)
    
    # 8. 查看合并后的提交历史
    echo "合并后的提交历史:"
    git log --oneline -n 3  # 显示最近3条提交
    
    # 9. 删除已合并的本地分支
    git branch -d feature/single-feature
    echo "已删除本地分支 feature/single-feature"
    
    # 10. 诊断操作(关键命令)
    echo "===== 诊断工具 ====="
    # 查看分支全貌(含最后提交信息)
    git branch -av
    
    # 查看操作记录(用于找回误删分支/提交)
    git reflog show --all
    
    # 查看暂存区和工作区状态
    git status
  • 冲突解决示例

    # 1. 尝试合并
    git merge master
    
    # 2. 发现冲突后,查看状态
    git status
    
    # 3. 手动解决冲突(编辑文件)
    比如 src/index.js
    
    # 4. 标记解决
    git add src/index.js
    
    # 5. 完成合并
    git commit

     

 

posted @ 2025-06-18 18:41  eliwang  阅读(37)  评论(0)    收藏  举报