git相关

1.将 'dev' 变基到 'origin/master

git rebase 是一个本地操作,它只会修改你当前所在分支的提交历史,而不会直接影响远程仓库或任何其他分支。

  1. 保持提交历史的线性和整洁: 这是 git rebase 最主要的目的。 想象一下 dev 分支是从 master 分支分叉出来的,并且在 dev 分支上进行了一些开发。 在此期间,master 分支可能也在不断更新。 如果你使用 git merge 将 master 分支合并到 dev 分支,那么 dev 分支的提交历史会包含一个合并提交,这会使提交历史看起来像一个分支树。 使用 git rebase 可以避免这种情况,它会将 dev 分支的提交“移动”到 master 分支的顶端,使 dev 分支的提交历史看起来像是直接在 master 分支上进行开发一样,从而保持提交历史的线性。

  2. 简化 dev 分支的提交历史: 通过将 dev 分支变基到 origin/master,你可以将 dev 分支上的所有提交都放在 origin/master 分支的最新提交之后。 这可以使 dev 分支的提交历史更加清晰,更容易理解。

  3. 示例:

    假设 origin/master 分支的提交历史如下:

    A -> B -> C
    

    dev 分支的提交历史如下:

    A -> D -> E
    

    如果你执行 git rebase origin/master 命令,那么 dev 分支的提交历史会变成:

    A -> B -> C -> D' -> E'
    

    其中 D' 和 E' 是 D 和 E 的副本,但它们的提交 ID 已经发生了改变。

2. 使 master 分支包含 dev 分支的更改

  1. 确保你在 dev 分支上,并且已经成功地将 dev 分支变基到 origin/master

    git checkout dev
    git rebase origin/master
    

    如果在变基过程中出现冲突,请解决冲突并使用 git rebase --continue 命令继续变基。

  2. 切换到 master 分支:

    git checkout master
    
  3. 将 dev 分支合并到 master 分支:

    git merge dev
    

    这会将 dev 分支上的所有更改合并到 master 分支。 如果出现冲突,请解决冲突。

  4. 将本地 master 分支推送到远程 origin/master 分支:

    git push origin master
    

    这将把你的本地 master 分支的更改推送到远程仓库,使远程 master 分支也包含 dev 分支的更改。

  • 变基 (rebase): git rebase origin/master 只是将 dev 分支的起点“移动”到 origin/master 的最新提交之后,使得 dev 分支的提交历史看起来像是直接在 origin/master 分支上进行开发一样。 它并没有修改 master 分支本身。
  • 合并 (merge): git merge dev 才是将 dev 分支的更改合并到 master 分支的步骤。 它会在 master 分支上创建一个新的合并提交,将 dev 分支的更改包含进来。
  • 推送 (push): git push origin master 是将你的本地 master 分支的更改推送到远程仓库的步骤。 只有执行了这个步骤,远程 master 分支才会发生变化。
### GIT 常用命令列表及操作指南 在使用 Git 进行版本控制时,掌握常用命令是高效工作的基础。以下是一些常见的 Git 命令及其功能说明: #### 1. 初始化仓库 初始化一个本地 Git 仓库的命令为 `git init`。该命令会在当前目录下创建一个名为 `.git` 的子目录,其中包含所有必要的文件以支持 Git 版本控制功能[^1]。 ```bash git init ``` #### 2. 配置用户信息 通过 `git config` 命令可以设置用户的全局配置信息,例如用户名、邮箱地址以及默认编辑器等[^2]。 ```bash git config --global user.name "<用户名>" git config --global user.email "<邮箱地址>" git config --global core.editor "<编辑器>" ``` 要列出所有当前配置信息,可以运行以下命令: ```bash git config --list ``` 如果需要查询特定配置项的值,可以使用以下命令: ```bash git config <key> ``` 此外,还可以为常用命令创建别名,简化输入过程: ```bash git config --global alias.<别名> "<命令>" ``` #### 3. 文件状态管理 查看工作区和暂存区的状态,了解哪些文件被修改或添加到暂存区中: ```bash git status ``` 比较工作区与暂存区之间的差异,可以使用以下命令: ```bash git diff ``` #### 4. 添加文件到暂存区 将文件从工作区添加到暂存区,准备提交到版本库: ```bash git add <file_name> ``` 若要一次性添加所有更改的文件,可以使用以下命令: ```bash git add . ``` #### 5. 提交更改到版本库 将暂存区中的更改提交到版本库,并附带一条提交信息: ```bash git commit -m "提交信息" ``` #### 6. 删除文件 从 Git 中删除文件并同时从文件系统中移除: ```bash git rm <file_name> ``` 如果只想从 Git 中删除文件而保留文件系统中的文件,可以使用以下命令: ```bash git rm --cached <file_name> ``` #### 7. 查看提交历史 查看所有的提交记录,包括每次提交的哈希值、作者、日期和提交信息: ```bash git log ``` 为了更简洁地显示提交历史,可以使用以下命令: ```bash git log --oneline ``` #### 8. 回退版本 回退到上一个版本的命令如下: ```bash git reset --hard HEAD^ ``` 如果需要回退到更早的版本,可以使用 `HEAD~n` 表示回退 n 次版本[^4]。 #### 9. 分支管理 创建新分支并切换到该分支: ```bash git checkout -b <branch_name> ``` 列出所有分支: ```bash git branch ``` 切换到指定分支: ```bash git checkout <branch_name> ``` 合并分支到当前分支: ```bash git merge <branch_name> ``` 删除分支: ```bash git branch -d <branch_name> ``` #### 10. 远程仓库操作 添加远程仓库地址: ```bash git remote add origin <repository_url> ``` 推送本地分支到远程仓库: ```bash git push -u origin <branch_name> ``` 拉取远程仓库的最新更改: ```bash git pull origin <branch_name> ``` #### 11. 克隆远程仓库 从远程仓库克隆代码到本地: ```bash git clone <repository_url> ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值