私はgitが初めてです。私が行ったことは、興味のあるいくつかのリポジトリをフォークし、それらを自分のコンピューターに複製してそれらを操作することです。
元のプロジェクトの一部は、ローカル コピーをいじったために大幅に更新されたり、些細な変更を加えたりする可能性があります。
私が理解していることから、クローンを「リベース」して、元の変更を「プル」することができます。
それは私の変更に何をしますか? たとえばDoSomething.cpp
、元のファイルがあるとします。私はそれを修正し、おそらく小さなバグを修正したり、機能を追加したりします. 今!1 年後、元のプロジェクトは多くの改訂を経て、はるかに優れたものになりました。これらの変更をクローンに「プル」したいのですが、変更も保持します。(つまり、これは一種のプッシュの逆です)
これは簡単ですか?もしそうなら、基本的な考え方は何ですか?
私が望むのは、元のクローンからの私のクローンの変更 (私が変更したもの) は上書きされませんが、実際に私の変更を元の (フォーク上の) とマージし、実際にチェックして確認する機能を与えられることです。変更を受け入れます。(たとえば、DoSomething.cpp
オリジナルが変更された場合、変更を比較して互換性があることを確認する必要があります。
私はフォークの所有者なので、フォークをリベースまたはハードリセットして、ローカルの変更をフォークにプッシュできるので、これは難しくないと思いますか? (バージョン管理の問題が発生する可能性が非常に高いため、機能するかどうかはわかりません)