如何将其他存储库更改作为提交放入我的存储库?

时间:2018-04-09 01:50:26

标签: git gitlab

我有一个存储库,它是基于此存储库https://github.com/AshamaneProject/AshamaneCore

的本地存储库

我想将所有提交合并到我的存储库作为单个提交进行所有更改,我该怎么做?

我正在使用ubuntu 17

2 个答案:

答案 0 :(得分:0)

您是否希望本地仓库包含该仓库中的所有文件,但您希望您的仓库只有一次提交,一次性添加所有内容? 然后你可以克隆repo,删除.git/目录,初始化一个新目录并添加所有文件并创建单个提交。

如果你已经有很多东西想要添加它们,你可能应该在没有合并它的情况下获取它们的东西,然后进行某种类型的壁球合并。 所以基本上是这样的:

  1. 添加远程
  2. 获取要合并的分支
  3. 查看要将其内容添加到
  4. 的分支
  5. 使用类似git merge <remote>/<branch> --squash的内容进行合并(我不完全确定壁球的语法)
  6. 这也应该处理任何不同的历史记录,这样只有他们所做的新提交才会包含在压缩的提交中。

答案 1 :(得分:0)

我能理解你的问题,你想要制作另一个回购的干净副本并推送到你自己的回购。如果是我,我会这样做:

  
      
  1. git clone / download as zip
  2.   
  3. git init - &gt; git remote add origin
  4.   
  5. git commit -am“initialize commit”
  6.   
  7. git push -u origin master
  8.   

如果您执行git clone,则可以浏览到该目录并删除.git文件夹($cd <path-to-project>; $rm -rf *.git)并从步骤2继续。

通过删除.git文件夹,您将删除所有以前的提交/消息/日志,使其成为一个干净的新回购。

就像这样:

  
      
  1. $ git clone&lt;#repo-url#&gt; 。 (点是要克隆到当前目录,该目录应为空)
  2.   
  3. rm -rf .git
  4.   
  5. (从上面第2步开始)
  6.