WindowsでGit。MSYS か Cygwin か?
質問
私は自分のプロジェクトを git に移行する予定ですが、現在、Windows で最も良い、あるいは最も安定したオプションはどれなのかと思っています。
私が調べたところでは、基本的に 2.5 のオプションがあります。
注: IMO Cygwin はそれ自体が大きなプラス要素で、ほとんどすべての *nix コマンドライン ツールにアクセスすることができます。
そうすると、どのようなオプションをお勧めしますか?
どのように解決するのですか?
編集(さらに2年後:2014年10月)
ヨハネス・シンデリン(Johannes Schindelin 説明済み (2014年10月)のように msysgit が段階的に廃止される :
これで 軽量な Git for Windows SDK ができました。 - これは、基本的に標準的な MinGW/MSys システムで、パッケージマネージャの mingw-get を通して管理されます。
私たちは、quot;msysGit" という名前 (および GitHub の同名の組織 を廃止し Windows用Git ( に対応するGitHub org) で、エンドユーザー向けのインストーラーは "Git for Windows" 、Windows 開発者向けの開発環境は "Git for Windows SDK" という名前を使っています)。
編集(3年後:2012年4月)
MsysGit(現在
をGitHubに登録
) は、Git の世界で軽量かつ迅速なスタートを切りたい場合に最適な方法です。アーカイブを解凍し、起動すると
git-cmd.bat
あるいは
git-bash.bat
と入力すれば完了です。
その
最新リリース(1.7.10、2012年4月)
には、現在
UTF-8 をサポートしました。
また
GitExtension に含まれています。
.
を設定することを忘れないでください。
autocrlf
を false に設定することを忘れないでください。
となっていますが。
msysgit に含まれない他のすべての unix コマンドが本当に必要であれば、単に
GoW (Gnu on Windows)
という名前のリリースをダウンロードするだけです。
という意味です。
130
unixコマンド
s...
の転送速度のように、Cygwinは特定の場合にのみバックアップソリューションとなるべきものです。 大 Git リポジトリの転送速度のように、特定の場合にのみバックアップソリューションとすべきです。 インクリメンター で 彼の答え .
2012年6月:もし、あなたが交流したいのなら
GitHub
を使うようになりました。
http://windows.github.com
(参照:"
GitHub の Windows 版のデザイン
"を参照)。
これは、ssh鍵を設定してくれるだけでなく(そして生成された公開鍵をGitHubのプロファイルに追加してくれます)、すべてのgit操作のために、...をインストールしてくれます。MsysGitです。
オリジナルの回答 (2009年4月)
最新版のMsysGitで問題ないです。
私は
オプション 2
を使用しています。これは、PATH 環境変数に gitbin ディレクトリを追加するだけで、いくつかの組み込み Windows ツールをオーバーライドしないことを意味します。
のような外部ツールを定義することができました。 メモ帳 と WinMerge(または DiffMerge)
のようなスクリプトを実行して成功しました。
svn2git
というのは、MsysGit1.6.2+ からは、'svn2git' を含むからです。
git svn
というコマンドが含まれているからです。
そして最後に私はそれのためにMsysGit1.6.2.3を楽しみにしている
は最終的に'
git filter-branch
というコマンドがあります。
! (filter-branchの低速版ですが、それでも)です。
Unixコマンドの場合、私はどちらかというと GnuWin32 coreutilsパッケージ をインストールし、必要なときだけ使用します。
結局のところ、私はCygwinのレイヤーを使わず、WindowsベースのリリースであるMsysGitで非常にうまくGitを実行することができました。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git で、ステージされていない変更を破棄するにはどうしたらいいですか?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Gitのエラーについて覚えておく-すべて最新にする
-
Git がエラーを報告しました。現在のブランチの先端が遅れているため、更新が拒否されました。
-
[解決済み] Windows で Git を使用するためのエディタを設定するにはどうすればよいですか?
-
git push please tell me who you are or git fatal: empty ident name (for <>) not llowed.
-
[解決済み] Git のリモート HEAD を master 以外に指定するように変更する
-
[解決済み] gitで、stashを適用せずに、追跡されていないstashedファイルを表示する方法はありますか?
-
[解決済み] 非標準のポートでリモートリポジトリを使用する
-
[解決済み] Git の 'master' ブランチを 'release' にリネームするには?
-
[解決済み] ファイル変更時のDockerコンテナの再構築
-
[解決済み] Git Bashの正確な意味は何ですか?