4

それで、今日は良いことをして、リポジトリ内のファイルを再配置したいと思いました。コミットしてAssemblaリポジトリにプッシュしました。

GIT GUIでの様子

git moving コマンドを使用しなかったため、すべてのファイルの履歴が失われました。私は自分の過ちに気づき、後で正しい種類の動きができるように、不要な変更を取り除きたいと考えました. hereに示されているアプローチを試しましたが、代わりに次のようになりました。

$ git push -f origin 49bcfdceb30a1e9cfab0f0e7e39bfa04dc726b78:master
Total 0 (delta 0), reused 0 (delta 0)
remote: error: denying non-fast-forward refs/heads/master (you should pull first)
To git@git.assembla.com:myproject.git
 ! [remote rejected] 49bcfdceb30a1e9cfab0f0e7e39bfa04dc726b78 -> master (non-fast-forward)
error: failed to push some refs to 'git@git.assembla.com:myproject.git'

情報:

% 49bcfdceb30a1e9cfab0f0e7e39bfa04dc726b78 is the one tagged 'beforerearrange'

この問題を解決する方法について何か提案はありますか?

4

2 に答える 2

13

質問されたとき、私はそれが の制限に関連している可能性があるとは思いもしませんでしAssemblaた.

これは 1 回限りの取引なので、うまくいった次の方法を選択します。

@michael-mior によって言及されたリンクで Assembla からの最後のコメントを引用します (現在は廃止されていますが、マシンの方法でまだ見つけることができます)。

  1. Assembla.comにアクセス
  2. プロジェクトに移動 ->ソース/Git -> 設定
  3. 「 --force プッシュを許可する」チェックボックスをオンにします
  4. 右側のノードを強制的にプッシュします。

    git push -f origin 49bcfdceb30a1e9cfab0f0e7e39bfa04dc726b78:master
    
  5. ローカルの混乱をクリーンアップします。
  6. Assembla.comに戻り、「Allow --force push」を無効にします。

結果:

ここに画像の説明を入力

于 2012-11-12T14:52:48.917 に答える
2

Assemblaは強制プッシュを拒否しているようです。(このスレッドは、サポートに連絡する必要があることを示唆しています。)

ほんの数回のコミットなので、おそらくgit revertそれらすべてを順番に元に戻すために使用するのが最善のオプションです。

于 2012-11-12T14:04:37.677 に答える