2016-08-26 4 views
1

私はgit/githubを使っていないので、申し訳ありませんが、間違いがあります。githubリポジトリの特定のサブディレクトリから古いコミット履歴を削除する方法は?

前提: 私はいくつかのドキュメンテーション(subidirectory path/to/wikiに含ま値下げファイルすべて)を更新/作成githubのレポ(サードパーティのマスターレポのブランチ)に取り組んでいます。

だから、私は「マイクロ」の多くを行っ 、(私は、Webレンダリングドキュメントの視覚的な効果を見て&アップグレードた.mdファイルを監視する必要があるため)githubのWebインターフェイス上で直接作業githubの上で直接コミットページ:https://github.com/solyaris/ChatScript/tree/master/wiki

問題: は今、私はすべての更新プログラムを終えて、私はおそらく更新をコミット数十の「物語をコミット」無用を共有するために避けて、行われる作業のため、外部のマスターレポにpull requestをやってみたいです...

wikiディレクトリの.mdファイルごとに、私はliすべてのコミットストーリーではなく、編集結果の最終結果を送信すること。

おそらく、このgitオプションは「rebase」と呼ばれていますか?とにかく、私はどのように正確に達成したい "剪定"を知っていません。

特定のディレクトリや特定のファイル(例:https://github.com/solyaris/ChatScript/blob/master/README.md)に含まれる古いコミットを削除することはできません。

ところで、githubページで直接行う方法がありますか?

または私はあなたが何をしたいのか

$ git clone https://github.com/solyaris/ChatScript 
$ git ... # commands to delete commit history 
$ git push to github 
+1

@ georgio-robino私は最近「chatscript」タグを作成しましたが、これは具体的なものではないようですので、編集しません。しかし、私はあなたが貢献者であり、しばしばあなたのCSに関する質問に応じて、質問にタグを付けるのを手伝ってもらえますか?大いに感謝します:) –

+1

@マットフレッチャー、 最初の点:私は確かに同意します。 2番目の点:私は質問にタグを付けることとまったく同じですか? ありがとうございました –

+0

誰かがチャットスクリプトに関する質問をしてもタグとして追加しない場合は、質問を編集してそれを含めてください。うまくいけば、タグは固執するでしょう。私は1つも追加していないので、あまり知らないけど、毎月新しい質問がないとタグを削除するスタック交換サイトについて読んだことがある。乾杯! –

答えて

-3

で、私のPC上でのレポのクローンを作成する必要があるが、悪い習慣です。 Gitは、すべてのあなたの狂った改訂版を保持し、他の人を公開して(一部を除外したり、上に構築するために)公開することを意図しています。彼らは彼らのコミットログにあなたの狂気を含めたい場合はメンテナ次第だし、そうでない場合、それはgit pull --squash <remote> <refspec>

と同じくらい簡単です。しかし、私は、ありませんどのような方法


あなたの質問に答えることになりますあなたがしたいことではありません。ちなみに

git checkout -b changes-for-pr master 
git diff master..branch-with-my-work-so-far -- path/to/subdirectory | git apply 
git add . 
git commit 

をコミットする代わりに、あなたのローカルリポジトリに新しいブランチを開始する必要があり、ちょうど1でその上にすべての変更を置く:GitHubに、ホスティングのための素晴らしいもののは、Gitのための非常に貧しいフロントエンドです。 Linus Torvalds(Gitの作成者)もそれに乗っています。

+2

本当に私はこの特定のケースでは "悪い習慣"を見ません:すべてのマイクロコミットの物語を引き出すことを避ける、私の側に、礼儀/清潔のほとんどのフォーム:)です。 とにかく、あなたが知っている限り、マスターノードの所有者が言っている "スカッシュ"を行うには単純な方法(単にgithubウェブフロントエンドを使用します)があります(私がreqを引き出すとき) thx –

+0

あなた自身の意見それは非常に議論の余地があり、質問に答えるのを助けません。私は歴史の中でそれぞれ一つの論理的な変化を表すコミットを持つことを好みます。しかし、時にはそれは不可能です - 私は、Pcを残して、本当に乱雑なものをコミットしなければなりません。一日後に私はそれを幾分利用可能な形で持ってきて、私は歴史を書き換えます。履歴をクラップスに混乱させることには利点があります。バグを導入した変更を追跡するだけで、ファイルを退屈させることになります。 GitHubについてのあなたの意見と同じです。 – Polygnome

0

私はおそらく解決策を見つけました(自分自身に答えるのは申し訳ありません)。

私はよくこのgithubのヘルプドキュメントを読んで理解している場合:

https://help.github.com/articles/about-pull-request-merges/

マスターレポの所有者が可能で、「スカッシュ」フラグを使用して、githubのWebインターフェイス上のプルリクエストをマージする場合、 (コミットの完全なストーリーではなく、ただ1つのコミットを保持している更新を受け入れる)ことができます。それが私の問題を解決する!

これは間違いありません。

関連する問題