問題タブ [git]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 長い行に git diff を使用するにはどうすればよいですか?
ファイルに対してgit-diffを実行していますが、変更は長い行の最後にあります。
カーソルキーを使って右に移動すると、色分けが失われ、さらに悪いことに行が整列せず、変更を追跡するのが難しくなります.
その問題を防ぐ方法、または単に行を折り返す方法はありますか?
私はmingw32経由でGit 1.5.5を実行しています。
git - Gitに最適なビジュアルマージツールは何ですか?
Gitでマージを表示および編集するための最良のツールは何ですか?「mine」、「theirs」、「ancestor」が別々のパネルにあり、4番目の「output」パネルがある3方向のマージビューを取得したいと思います。
また、上記のツールを呼び出すための手順は素晴らしいでしょう。(エラーが発生しないような方法でkdiff3を起動する方法をまだ理解していません。)
私のOSはUbuntuです。
git - SVN または Mercurial を使用してコードの一部のみをコミットできますか?
普段は Tortoise SVN を使っていますが、Mercurial は分散リビジョン管理システムということで調べていました。
両方のシステムで私が探しているのは、ファイルの一部だけを選択してコミットできるツールです。これを今すぐ行う場合は、ファイルの一時バージョンにコピーし、現在のバージョンでコミットする変更のみを保持し、コミット後に一時バージョンを現在のバージョンに再度コピーする必要があります。それはとても面倒なことであり、プログラムは私のためにこれを行うことができるはずです.
Git がこれをサポートしていると聞きましたが、これが正しいかどうか教えてください。
svn - git svn はどのように使用しますか?
svn で git を効果的に使用するためのヒントを提供してください。あなたの「ベストプラクティス」は何ですか?
svn - ソースコード管理戦略 - 分岐、タグ付け、フォークなど - Web アプリ用
この投稿 (ブランチを使用する中規模のプロジェクトでデータベースのリビジョンを管理するにはどうすればよいですか? ) を読んで、ブランチを使用して Web プロジェクトで作業し、開発、ステージング、および運用 (ローカル コピーと共に) にデプロイする最善の方法を考えさせられました。
「リリース」自体はありません。機能が目立つほど大きい場合は、(必要なテストなどの後)ライブにプッシュします。そうでない場合は、いくつかをまとめて、「快適」と感じたらプッシュします。それらは生きています。絶えず変化するサイトはユーザーを少し不安にさせる傾向があるため、目標は月に 1 回か 2 回以上展開しないことです。
これが私たちのやり方で、ちょっともろく感じます (現在は svn を使用していますが、git への切り替えを検討しています):
- 2 つの「ブランチ」 - STAGE の特定のリリースが TRUNK としてマークされている DEV と STAGE
- 開発者は変更ごとに TRUNK のコピーをチェックアウトし、そのブランチを作成します
- 開発者はローカルで作業し、コードを頻繁にチェックインします (投票のように: 早期かつ頻繁に)
- 開発者が完全に壊れていないことに慣れたら、ブランチを DEV にマージし、開発サイトにデプロイします。
- 変更が「終了」するまで、必要に応じて 3 ~ 4 を繰り返します。
- 変更ブランチを STAGING にマージし、ステージ サイトにデプロイします。期待される最終テストを行います。
- 一定期間後、STAGE の特定のリビジョンを TRUNK としてマークし、トランクをライブにプッシュします。
- TRUNK の変更を DEV にマージして同期を維持する
現在、これらのステップのいくつかは非常に複雑であり、実際には実行が非常に困難です (TRUNK -> DEV は常に壊れます)。そのため、もっと良い方法があると想像する必要があります。
考え?
svn - git svn dcommitを単一のsvncommitにすることは可能ですか?
マニュアルによると、git dcommit
「gitのコミットごとにSVNにリビジョンを作成します。」しかし、複数のSubversionリビジョンを回避する方法はありますか?つまり、svn commit
?を実行する前にgitにすべての変更をマージさせることです。
git - 「git export」(「svn export」など) を実行しますか?
.git
リポジトリ ディレクトリなしでツリーのコピーを作成する、優れた "git export" ソリューションがあるかどうか疑問に思っていました。私が知っている少なくとも3つの方法があります。
git clone
その後、.git
リポジトリ ディレクトリを削除します。git checkout-index
この機能をほのめかしていますが、「目的のツリーをインデックスに読み込むだけ...」で始まります。これは、どうすればよいか完全にはわかりません。git-export
git clone
基本的に、一時的な場所に続いrsync --exclude='.git'
て最終的な目的地に移動するサードパーティのスクリプトです。
これらの解決策のどれも、満足できるものではありません。svn export
どちらも最初にターゲットディレクトリを空にする必要があるため、最も近いのはオプション1かもしれません。しかし、ツリーをインデックスに読み込むことが何を意味するかを理解できると仮定すると、オプション 2 の方がさらに優れているように思えます。
git - SVN または Git を使用する必要がありますか?
新しい分散プロジェクトを開始しています。SVN または Git を使用する必要がありますか? その理由は?
git - Git リポジトリでマージの競合を解決するには?
Gitリポジトリでのマージの競合を解決したいと考えています。
どうやってやるの?
git - .git/info/grafts は何のためにあるのですか?
Git の「グラフト」とは何かを理解しようとしています。
たとえば、こちらの最新のコメントの 1 つで、Tobu はgit-filter-branchと.git/info/graftsを使用して 2 つのリポジトリを結合するとします。
しかし、なぜこれらの移植片が必要なのかわかりません。最後の 2 つのコマンドがなくてもすべて動作するようです。