从本地备份重新创建远程Github存储库

时间:2016-01-28 22:59:11

标签: git github

简短版:

将本地Github备份还原到Github上的正确方法是什么,同时保留提交历史记录?

长版:

所以,不久前,我正在Github上开发一些私有存储库。我打算休息一下,为了节省一些钱(并避免公开源代码),我确保我的本地分支完全更新,然后从Github删除了存储库。现在,我已准备好将这些本地文件恢复回Github,这次是公开而非私有。但是,我遇到了将文件重新送回服务器的问题。

我已经在Github上创建了一个同名的裸仓库。原因设置正确,因为项目具有与以前相同的名称(和URL)。它是一个小型的个人项目,所以只有一个分支(主)。

但是,由于我的 git status 是最新的(从我进行备份时保留),当我尝试添加-A / 时提交 / push --all ,没有任何反应。从新的,空白的远程回购中拉出来似乎没什么帮助。

我发现了一些关于如何从本地git备份进行恢复的讨论,但他们都假设您正在恢复到自己的服务器上,并且可以在服务器端运行命令。显然,Github托管的回购并非如此。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您是否为github repo创建了初始提交?你有推动力吗?如果我正确理解你的历史,那么你所拥有的本地仓库并不是目前github上存在的东西的祖先,所以你需要强制refs更新,这应该填写你的github仓库的所有历史记录以匹配你的本地之一。

   -f, --force
       Usually, the command refuses to update a remote ref that is not an ancestor of the local ref used to
       overwrite it. Also, when --force-with-lease option is used, the command refuses to update a remote ref
       whose current value does not match what is expected.