2014-05-12 78 views
10

我正在開發一個git項目(託管在GitHub上)並使用Gi​​tHub for Windows。昨天,我取得了很多成就,但GitHub for Windows保護我(說它不能提交),我無法承諾。Git(GitHub)在過去的日期提交

我不想失去我的GitHub提交條紋,所以我想知道是否有任何方式提交過去的日期並與我的GitHub同步(如果這是可能的話)。

另外:我已經在git-bash中提交了我的提交,但還沒有提交。

+0

重複:http://stackoverflow.com/questions/3895453/how-do-i-make-a-git-commit-in-the-past – ctor

+0

@ctor該問題沒有指定GitHub結果..它會以同樣的方式工作嗎? – EpicDavi

+1

@EpicDavi:是的,GitHub的工作原理與其他遠程git倉庫一樣。然而,問題是關於回溯提交去*先於其他承諾*,這不僅僅是回溯下一提交更加複雜。 – sleske

回答

16

雖然問題「How do I make a Git commit in the past?」介紹如何修改提交的作者日期:

git commit --amend --no-edit --date="Fri Nov 6 20:00:00 2015 -0600" 

運行,經過提交修改最後一次提交與時間戳指出。
--no-edit將原樣保留消息。

的OP問:

這個問題沒有明確規定GitHub的結果......它會以同樣的方式工作?

是:存在多個項目,允許您生成並推送「過去完成」提交,以便更新您的貢獻圖表。

參見例如contribution.io或(更準確地)github-contribution

所有你需要做的,是推動這些修改提交您的GitHub庫的master分支,爲I mention here

+0

sleske評論說,鏈接的問題是在其他提交之前解釋提交的提交。你知道任何更簡單的方法來備份我最新的待提交嗎? (最新的代碼) – EpicDavi

+1

@EpicDavi最新的提交:http://stackoverflow.com/a/9110424/6309 – VonC

+0

我是先提交然後運行這個命令,還是這個命令爲我提交? – EpicDavi

1

由於是Git的..如果你已經在那一天你擁有了它在內存中的承諾,它可以隨時爲在連勝信貸日後推迷死人。關於它的唯一棘手的部分是,記住你在任何一天正在處理的回購。

可以這樣說:您的項目在當時是私有的...假設它沒有授權,可以分叉,克隆,推送到您自己的新repo ..從原始項目的任何提交都會填充您的貢獻歷史記錄。

比方說:你一直在做一組項目......你可以得到的捐款,如果你是一個貢獻者,並取得了提交,加入該項目,以自己的回購協議。

有幾十個哈克解決方案,以GitHub的條紋.. 但是讓我們面對它...它總是更好地利用好,原代碼所有權..

13
git commit --allow-empty --date="Sat Nov 14 14:00 2015 +0100" -m '2 Dec commit' 

它將創建空的,承諾提供日期

+0

DId不回答問題,但感謝信息 –

+0

@ std''OrgnlDave爲什麼你認爲答案不完整? – Yash