【Git游戏】提交的技巧

修改历史的提交

  • rebase

    通过git rebase -i 将要修改的提交提到最前端,

    然后修改,再通过git commit --amend提交该记录,最后通过git rebase -i 在替换会原始的位置

    (该过程中有可能会产生rebase confict)

  • cherry-pick
    cherry-pick 可以将提交树上任何地方的提交记录取过来追加到 HEAD 上(只要不是 HEAD 上游的提交就没问题)。

Tag

分支只是指向某个提交记录

提交树是提交记录以链式结构构成的

分支很容易被人移动
git tag v1 commitID 给commitID所对应的提交打上Tag标记

如果不指定提交记录,Git 会用 HEAD 所指向的位置。

Describe

TODO

多分支Rebase

git rebase A B

这条命令我总结为后来居上(这条命令中A分支相对与B分支在前),结果是B分支的提交记录相对与A分支的提交记录新

(A变成B的基础分支,变基大概是这个意思吧)

注意:两个分支指向的提交记录链不同之处从分支点之后开始的,因此rebase的时候也是提交记录链从不同之处开始变基的,并且会跳过相同的提交记录,如果有的话。

git rebase A

表示 A作为当前分支的基础

git branch

git branch 分支名 commitID

在commitID上创建分支

git merge 分支名

分支名指向的提交记录合并到当前分支

git cherry-pick

一图胜过万语

相关推荐
Minecraft红客4 小时前
C++小游戏荒芜的城堡
c++·游戏·娱乐
王者鳜錸11 小时前
PYTHON让繁琐的工作自动化-猜数字游戏
python·游戏·自动化
百思可瑞教育12 小时前
Git 对象存储:理解底层原理,实现高效排错与存储优化
大数据·git·elasticsearch·搜索引擎
Bitup_bitwin15 小时前
Git智能合并机制深度解析
git
NRatel20 小时前
Unity 游戏提升 Android TargetVersion 相关记录
android·游戏·unity·提升版本
TeleostNaCl21 小时前
OpenWrt 编译 | 一种使用 git submodule 方式实现一键更新多个外部软件包
网络·经验分享·git·智能路由器
人工干智能1 天前
pygame的帧处理中,涉及键盘的有`pg.event.get()`与`pg.key.get_pressed()` ,二者有什么区别与联系?
python·游戏·计算机外设·pygame
Cosmoshhhyyy1 天前
mac环境下安装git并配置密钥等
git·macos
yuwei0211 天前
git大全解
git
EanoJiang2 天前
类蜘蛛侠+刺客信条暗杀动作系统开发日志
游戏