git 怎么保留当前内容的同时,删除以前的提交记录?

我有个远程仓库,然后我在本地clone了下来,在本地提交了很多次。
提交历史记录里面有很多图片(各种删删改改)。

我想问下,如果我push了,已经删除掉的图片(曾经commit到本地仓库)会被记录然后提交上去吗?

有什么办法在保留当前仓库状态的同时,抛弃过往所有的commit记录呢?

我的操作如下

  1. clone 远程仓库到本地
  2. 本地仓库添加了一堆图片 ,add 然后commit到本地仓库
  3. 本地仓库删除掉了图片,add 然后commit到本地
  4. 这时候我push,那么第2步的添加的图片会被提交的远程仓库吗?
阅读 7.9k
5 个回答

会有提交记录的。可以溯源,要想抹除记录的话。。
可以了解一下rebase(尽量少用这个)

rebase 。可以把以前的commit全部合并成一条

会提交的远程仓库的,本地怎么样,提交之后,远程仓库就怎么样

有一个相对简单的方法,如果你想合并最后两次修改,

git reset --soft HEAD~2

然后再重新commit就可以了。

git stash
Git reset --hard HEAD~2
Git stash pop

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进