私はGitに慣れてきましたが(これまでのところ非常に満足しています)、まだいくつかのことについて少し混乱しています。MacでSourceTreeを使用しています。
特に、私のチームと私は変更を加え、それらをコミットしてから、Linuxサーバー上にあるリモートのベアリポジトリにプッシュしていました。これとは別に、私は自分のラップトップでいくつかの実験を行っていましたが、最終的にはいくつかの異なるローカルな変更が行われました。
それらをマージしようとするのではなく、ラップトップをリモートリポジトリの状態に戻すことを本当に望んでいることにしました。リモートリポジトリから変更をプルダウンしようとしましたが、マージする必要があると警告された後、最後の公式コミットに戻す(GIT言語では「リセット」)ことにしました。私はすべてに対してこれを行い、ファイルをプルダウンすることができました。
ただし、SourceTreeによると、リモートサーバーにプッシュバックする必要のある変更が24あるとのことですが、それらの変更が何であるかがわかりませんでした(特に、何も保存しないことが目標だったため)。とても緊張しました。
最終的には、フォルダー全体(.gitを含む)を吹き飛ばし、リモートリポジトリのクローンを再度作成しました。
最後の欠点は、追跡されていない新しいファイルがある場合、一時的に別の場所にコピーすることを忘れると、それらのファイルが削除されることです。
私の質問は、ローカルの作業コピー(および.gitの内容)をリモートリポジトリの最新の状態に戻し、作業コピー内の追跡されていないファイルをそのままにしておく方法があるかどうかです。
Gitで元の場所から取得した変更をプッシュする必要があるのはなぜですか?しかし、ここで説明する問題のどちらにも実際には答えていません。
洞察を事前に感謝します。
D