1

私は自分自身の観察と懸念についてのテキストを保持するファイル「メモ」を置いたローカルレポを持っています。コミットしてリモート リポジトリにプッシュするときは、ファイルを削除する必要があります。最初にコミットを行う前に実行しましgit rm --cached notesたが、プッシュした後にノートファイルがgithubに表示されたため、これは明らかに機能しませんでした。

それで、私がローカルで行ったことをrm再度実行し(今回はどういうわけか機能します)、実行して
git commit --amendから、git show --stat --oneline HEADメモが削除されたことに気付きました。

しかし、プッシュするには、リモートの変更をローカル リポジトリにマージする必要があります。

現在のブランチのヒントがリモート ブランチの背後にあるため、更新は拒否されました。

したがって、プルを実行しますが、これも次のように失敗します。

CONFLICT (変更/削除): HEAD で削除され、5bfdf で変更されたメモ....

ローカルとリモートの両方で、このコミットからメモ ファイルを単純に削除するにはどうすればよいですか?

4

3 に答える 3

1

コミットしてリモートリポジトリにプッシュするときは、ファイルを削除する必要があります

ファイルをコミットしたくないが、ローカルで変更できるようにする場合は、

https://git-scm.com/docs/git-update-index

--assume-unchanged

git update-index --assume-unchanged <path>

--assume-unchangedフラグでマークされたファイルのリストを印刷する必要がある場合:

git ls-files -v|grep '^h'

ここに画像の説明を入力


あなたの問題を解決する方法?

ローカルとリモートの両方で、このコミットからメモ ファイルを単純に削除するにはどうすればよいですか?

まず、サーバーから変更をプルしてから、変更を行います。

git pull origin <branch>
git add -A .
git rm --cached notes
git commit -m ...
git push origin <branch name>
于 2016-03-20T06:11:27.350 に答える
0

もちろん、私の友達もいます。次の 2 つのリンクをチェックしてください。

- git 競合の解決に関する記事。あなたの問題のための特定の段落を持っています。

-たくさんの提案がある同じ問題に関する別の投稿。

私自身の提案は、マージ ツールを入手するか、既存の GIT ツールを使用することです。これにより、作業がずっと楽になります。

幸運を

于 2016-03-20T06:10:29.360 に答える
0
  1. メモ ファイルを一時的な場所に移動します。
  2. git pull. これにより、レポからメモがプルされます。
  3. git rm -f notes
  4. git commit
  5. git push

基本的には、ローカルとリモートを同期させてから、「メモ」ファイルを削除することを目的としています。

于 2016-03-20T06:12:09.447 に答える