首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Git只检查更改,而不创建历史记录

使用Git只检查更改,而不创建历史记录
EN

Stack Overflow用户
提问于 2018-06-17 09:30:02
回答 4查看 73关注 0票数 1

是否可以以下列方式使用Git?

  1. 目录结构中有一些文件,Git认为这些文件是干净的。
  2. 换一些文件。使用git diff查看更改。根据需要重复这一步骤。
  3. 最后,让Git将步骤2中的更改视为“干净”,而不创建历史。
  4. 无限地重复步骤2-3 .

这是为本地,单用户使用,只有当这使事情变得更容易。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-06-17 09:56:15

所以你只需要一次承诺。

第一步,

代码语言:javascript
复制
git add .
git commit -m foo

第二步,

代码语言:javascript
复制
#modify the files
git diff

第三步,

代码语言:javascript
复制
git add .
git commit --amend --no-edit

在第三步之后,您仍然只有一个提交。

如果需要只使用一次提交到远程存储库以进行备份,则需要推送分支。

代码语言:javascript
复制
git push <remote> -f <branch>

在这种情况下,始终使用-f强制更新远程分支。

票数 1
EN

Stack Overflow用户

发布于 2018-06-17 12:55:36

默认情况下,git diff只将工作目录与当前索引(暂存区域)进行比较。因此,您可以做的就是简单地添加您想要保持的更改,而不实际提交。这样,git diff将只获取尚未进行的更改,但实际上不需要创建提交。

唯一的“缺点”是Git在技术上不会考虑这种“干净”,而且git status仍然会显示您所有的阶段性更改。

票数 2
EN

Stack Overflow用户

发布于 2018-06-17 10:00:05

代码语言:javascript
复制
git reset --soft HEAD

git add --all

git commit -m "..."

因为我们重写了历史,所以提交需要-f:

代码语言:javascript
复制
git push -f
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50895360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档