web-dev-qa-db-ja.com

Git-scm、msysGit Git for Windowsの違い

違いは何ですか git-scmgit-scm.com からダウンロード)およびmsysGit( Google CodeGithub 、およびその他のホスト)どちらもかなり似ているようで、git-scmを持っているにもかかわらず、msysGitに指定された修正を適用し、うまく機能しているようです。

また、どちらかがGit for Windows、および両方とも呼ばれるGit Bash、または両方にGit Bashシェル、または2つのうち1つだけですか?

59
trysis

Webサイト git-scm.com は、バージョン管理ソフトウェアGitの公式Webサイトです。 「Git-SCM」はありません。これは、ソースコントロール管理(SCM)ソフトウェアのURLです。名前はGit。元々Linux用に作成されたオリジナルのGitソフトウェアは、Windowsで簡単にコンパイルできないソースとしてのみ利用できます。

GitをWindowsにインストールすることに興味がある場合は、ここで読むのをやめて、Windowsビルドをダウンロードするだけです 公式Webサイトから

Git for Windows

Git for Windows は、Git for Windowsのネイティブビルドの構築に特化したプロジェクトです。 Windowsのリリースはダウンロード可能です 公式のGit Webサイトで 、32ビットおよび64ビットビルドとして提供されます。

Git for WindowsはMSYS2( MinGW の一部)の上に構築されており、ネイティブコードで記述されていないGitのすべてのコンポーネントを実行するために使用される最小限のUNIX風のシェル環境を提供します(a多くのGitはシェルスクリプトとして記述されています)。 MSYS2でGitをビルドするために、プロジェクトグループには特別な「Git for Windows SDK」があります。これは基本的にWindowsでGitをビルドするために必要なビルド環境全体であり、 with with everything 作業を開始する必要がありますGit自体に。

プロジェクトは、独自の Gitのフォーク を維持します。これは、元のGitプロジェクトで最新の状態に保たれますが、Windows上でビルドするために必要なパッチのセットが含まれています。 Git for Windows releases は、通常、公式バージョンがリリースされてから少し遅れてリリースされます(ただし、バージョンはスキップされる場合があります)。

msysGit

Gitバージョン2より前は、Git for Windowsバイナリが msysGit と呼ばれるプロジェクトによってリリースされていました。これはGit for Windowsプロジェクトの前身です。 。このプロジェクトは2015年8月18日に廃止され、リビルドされたGit for Windows SDK開発環境でGit for Windowsプロジェクトが起動されました。新しいプロジェクトは、ほとんど同じチームで開始されました。

多くの人がmsysGitをGitバイナリの名前と考えていましたが、実際にはそれが彼らが作成した開発環境の名前でした。これは、MSYS2が新たに開始される前の、古い種類の古いバージョンであるMSYSに基づいていました。 MSYSの悪い状態は、Git for Windowsプロジェクトが完全に改良されたビルド環境で開始された理由の1つでした。

プロジェクトは基本的に3つのものをリリースしました:msysGit、Git for Windows、およびポータブルGit for Windows。 Git for Windows SDKが現在行っているように、msysGitインストーラーは、WindowsでGitをビルドするために必要な開発環境をインストールおよびセットアップします。 Git for Windowsは、WindowsマシンにGitをインストールするインストーラーであり、移植可能なGit for Windowsは、インストールする必要のない単なるバイナリでした。すべてのリリースは「プレビュー」ビルドとしてリリースされたため、完全にサポートされたリリースではないことに注意してください。それにもかかわらず、プロジェクトは非常に成熟しており、リリースは非常に安定しており、WindowsでGitを設定するための事実上の最良の方法です。

Git Bash

上記のように、Gitの多くはシェルスクリプトとして記述されています。これらのスクリプトを実行するために、Git for WindowsはMSYS2にバンドルされている Bash を使用します(したがって、Bashはそのためのインタープリターとして機能します)。

Git Bashは、一般的にGit for Windowsインストーラーが作成するショートカットを指します。 Bashを実行するフル機能のコンソールウィンドウを起動するので、Gitおよび一般的なコマンドラインツールまたはUnixプログラム(lessawkgrepなど)を使用できます。 、またはテキストエディター vim )。特に経験の少ないユーザーにとっては、Git BashはGitとやり取りする一般的な方法ですが、 PowerShell のようなWindows中心の環境から簡単に使用できます。

Gitバージョン2以降、Git BashはデフォルトでMinTTY、MSYS2に付属する 端末エミュレーター で起動し、コンソールエクスペリエンスに慣れていないユーザーでも簡単に使用できるようになります。

Git for Windowsのセットアップ中にPATHにGit実行可能ファイルを追加しない場合でも、Git Bashは常に機能することを知っておくと役立ちます。ただし、個人的な推奨事項は、Git実行可能ファイル(just Git実行可能ファイル、セットアップ中に[WindowsコマンドプロンプトからGitを使用]オプションを選択)をPATHに追加することです。そうすれば、他のシェル(cmd.exeまたはPowerShell)からGitを操作でき、他のプログラムもそれにアクセスできます(たとえば、多くのライブラリ、またはIDE統合ではPATHにGit実行可能ファイルが必要です) Gitリポジトリとやり取りします)。

102
poke