ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

git命令集合

git命令集合 1、git同步别人在远程新建的分支gitremote update origin--prune2、git把B分支已提交的内容更新到 A 分支但不提交、只保留修改内容法1用 git cherry-pick -n推荐针对单个/多个提交-n 即 --no-commit会把改动应用到工作区/暂存区但不自动提交。# 1. 切到 A 分支gitcheckout A# 2. 挑选 B 分支上的提交不提交gitcherry-pick-ncommit-hash如果有多个提交可以一次写多个git cherry-pick -n如果是一个区间git cherry-pick -n ^…执行后改动会进入暂存区staged。如果想让它们回到未暂存状态gitreset这样修改就保留在工作区但没有任何提交。法2用 git merge --no-commit --no-ff如果想把 B 分支的所有领先提交都带过来且不自动提交gitcheckout Agitmerge --no-commit --no-ff B–no-commit合并后不自动生成提交–no-ff即使能快进也强制生成合并过程配合 --no-commit 使用此时所有改动都在暂存区你可以检查后决定是否提交或者 git reset 取消暂存、git merge --abort 放弃合并。法3用 git diff git apply最干净完全不留 Git 状态如果只想把 B 的改动当作“补丁”打到 A 的工作区不涉及任何 Git 合并状态# 在 B 分支上生成从某点到当前的 diffgitdiffbaseB/tmp/b.patch# 切到 A 分支gitcheckout A# 应用补丁到工作区不暂存、不提交gitapply /tmp/b.patch用 git apply 只改工作区文件不进暂存区、不产生提交。如果只想应用 B 相对 A 的差异可以git diff A…B b.patch 然后切到 A 应用。几种方式对比常见后续操作取消暂存但保留修改git reset放弃所有改动git checkout – . 或 git restore .放弃合并状态git merge --abort
返回列表