2010-12-12 12 views
4

私の最近のプログラミングマシンが変更されました。新しいコードソースを既存のGithubリポジトリとHerokuのアプリケーションとシームレスに統合できるようになりました。git pull-remgeを押す前にリモートで変更が反映される

私はもともとgit cloneを使用して、新しいマシンにGithubレポをクローンしました。それ以来、何かが起こった。

  • 私はgit add .git commit -m "mychanges"、およびgit pushを行うと、コードはHerokuのに直接送信されます。それは私自身のGithubリポジトリに送られていましたが、それは「起源」とみなされるものを再定義する単純な問題だと理解しています。 losinghistoryからあなたを防ぐために:「... [email protected]
  • 私のGitHubリポジトリのアドレスに、原点を再定義し、git push origin masterを入力した後、私は次のエラーを取得する:
    エラーにいくつかの引用文献をプッシュすることができなかったが非早送りの更新は拒否されました。リモートの変更( 'git pull')をマージしてから、もう一度押してください。

git pull(私はすべての場合に備えてバックアップしています)を行うと、私の最後の2日間のコーディングが失われることが懸念されます。

現在のアイデア:git pullを実行し、バックアップから最後の2日間のファイルを手動で更新してから、最後に私のgit pushを実行してください。これは適切な方法ですか、より洗練されたソリューションですか?

答えて

10

リセットを使用しない限りgitはデータを上書きしません。 git pullは、origin/master(ブランチがマスタであることを前提とします)でコミットを行い、そのブランチをそのポイントに早送りして、ローカルの変更をマージします。ローカルでコミットした場合、それらのコミットはサーバ上のそれ以上のコミットを行った後であるため、代わりにgit pull --rebaseを実行することができます。

関連する問題