問題タブ [git-checkout]
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 checkout コマンドのパスの簡単な説明
checkout コマンドのgit ドキュメントには、次のテキストがあります。
...パスが指定されていない場合、git checkout は HEAD も更新して、指定されたブランチを現在のブランチとして設定します....
これが何を意味するかをもっと簡単に説明できる人はいますか?簡単に見えて申し訳ありませんが、そのページを読んでも、それが何を意味するのか正確にはわかりません. これが基本的なようでしたら申し訳ありません..
特に、チェックアウトが HEAD を更新する方法について混乱しています。私は通常、チェックアウトが作業ディレクトリに影響を与えることを想定しています。これは、後で作業する目的でリポジトリのローカルコピーを更新しているという点で、git に固有の機能ですか?
git - 古いコミットでローカルに変更を加えた後、ブランチに戻るにはどうすればよいですか?
git checkout
コマンドを使用して、コードの以前のコピーを取得しようとしました。ただし、これを使用する前に、を使用して最新バージョンのコードをコミットしましたgit commit
。
以前のバージョンを使用git checkout
した後、コードに変更を加えました。Gitは、変更を加えたため、コミットした最新バージョンに戻すことができなくなったことを通知します。
チェックアウトしたこのコードに加えた変更は気にせず、コードの最新バージョンに戻したいだけです。どうすればよいですか?
コマンドを使用してもgit log
、前のバージョンにチェックアウトする前の最新バージョンは表示されなくなりました。
git - 競合があるにもかかわらず、gitcheckout特定のファイル
ツリー内の特定のファイルのみをチェックアウトしたいのですが、ローカルで変更したため、マージを理解しようとする手間をかけたくないので、頻繁にチェックアウトします(何もマージしたくない-特定のファイルのgitバージョンが必要です) 。
では、たとえば、これらのファイルがディレクトリ構造に散在している「db-backup*」のチェックアウトを強制するにはどうすればよいでしょうか。
例えば
ありがとう、
r。
git - Git チェックアウト ファイル - ファイル名の大文字と小文字
ここでGit初心者:)
ケーシング関連の問題に直面しました:ファイルaspnetdb.mdf
は数コミット前にリポジトリから削除されました。以前のコミットのいくつかから復元することにし、そのようにしました:
3回目のバックコミットからファイルを取得したかった
しかし、gitは、そのようなファイルはないと言いました。
次に、次のように実行しました。
うまくいきました-必要なファイルを取得しました。
でも。コマンドgit checkout master~3 aspnetdb_log.ldf
(小文字のファイル名) コマンドは正常に実行されました。すべての開発中。両方のファイルが同じ方法で処理されていたことを処理します(ハックの名前変更などはありません:))。
そのような行動をどのように説明しますか?私は何を間違えましたか?
git - 現在サブディレクトリの下にある場合、GIT でファイルをアンステージするためにフル パスが必要ですか?
リポジトリ: mergetest
$pwd
/gitvobs/mergetest/アップル
$git ステータス
ブランチ br1 で
変更されたが更新されていない:
(コミットされる内容を更新するには、「git add ...」を使用します)
(「git checkout -- ...」を使用して、作業ディレクトリの変更を破棄します)
$git チェックアウト内部
エラー: pathspec 'inside' は、git が認識しているファイルと一致しませんでした。
$git checkout apple/insideは完璧に動作します
毎回、サブディレクトリ内にいるときに変更をアンステージするためにファイルのフルパスを指定する必要がありますか?
これは add には当てはまりません (どこでも 'git add file-name' を使用してファイルを追加できます)
これは GIT の動作ですか、それとも他のバージョンの GIT で変更されていますか?
gitバージョン1.6.6を使用しています
ありがとう
git - アクティブなGitブランチは、hudson CIでは「(ブランチなし)」です
私のAntbuild.xmlスクリプトは
Hudson CIは、ブランチが変更されたときにビルドするように設定されています。コンソール出力は...
コンソール出力から、HudsonはトピックブランチDPM-48を構築していることを認識していますが、環境変数GIT_BRANCHが設定されておらず、「gitbranch」はgitが「detachedHEAD」状態にあることを返します。
私が知りたいのは、ハドソンに構築しているブランチです。これを行う方法が必要です。
git - Git:別のブランチからファイルの一部のみを追加する最良の方法は?
ブランチmaster
と別のブランチproduction
があり、両方にファイルのバージョンとprog.py
他の多くのファイルが含まれているとします。を含む、運用ブランチの多くのファイルを変更すると想像してくださいprog.py
。さて、ブランチで行われたいくつかの変更のみをブランチのバージョンに適用する最良の方法は何ですか?prog.py
production
master
ブランチに移動し、master
ブランチからファイルをインポートし始めましたproduction
。
git add -p
手動で変更を行い、選択できるようにしたいと思っていたからです。問題は、それprog.py
が作業ツリーとインデックスの両方にあることです。作業ツリーに触れずにインデックスから削除するにはどうすればよいですか?
または、どの変更をブランチからブランチにprog.py
インポートするかを選択するより良い方法はありますか?production
master
git - Git:作業ディレクトリを変更せずにブランチ間で変更を移動する
ユースケース:コミットをあるgitブランチから別のgitブランチに移動するたびに、次の一連のアクションを実行します。
- [作業ブランチにコミット]
git checkout
ブランチからマージへgit cherry-pick
target-commitgit push
git checkout
ワーキングブランチ
これは唯一の例外を除いて正常に機能します-「gitcheckout」を実行するたびにgit作業ディレクトリの内容が変更され(予期されます)、IDE(IntelliJ IDEA)が内部状態の更新を実行します(監視対象のファイルシステムサブツリーが外部で変更されるため) )。これは、特に多数の小さなコミットの場合に本当に厄介です。
私には2つの方法があります。
- 「マスチェリーピック」を実行します。つまり、多数のコミットを実行します。たとえば、営業日の終わりに、それらを別のブランチに移動します。
- 2番目のローカルgitリポジトリがあり、その上でチェリーピックを実行します。つまり、実際のコミットとプッシュが作業ブランチに対して実行されるたびに、その2番目のリポジトリに移動し、変更をプルして、そこでチェリーピックを実行します。
特定のコミットを移動するのを忘れる可能性があるため、最初のアプローチは好きではありません。2つ目は少し...不自然に見えます。
基本的に、ディレクトリを更新せずにgit'このコミットをbranchXという名前のブランチからブランチbranchX+1'に移動すると言うことができれば完璧です。
質問:上記を実行することは可能ですか?
git - 「git branch --track」対「git checkout --track」
「git branch --track」と「git checkout -b --track」の違いは何ですか?
git - Gitで読み取り専用の目的で以前のタグをチェックアウトする最もクリーンな方法
ローカルマシンに作業ツリーがあり、リモートリポジトリもあります。作業バージョンの現在の状態を乱すことなく、既知のタグでプロジェクトの以前のバージョンをすばやくビルドしたいとします。私の傾向は、別のツリーをチェックアウトすることです。これは、この質問のようになります。
リモートリポジトリからのクローンとそれに続くチェックアウト。しかし、クローンは多くの作業を行い、すべてのリビジョン状態をプルダウンします。「このコミット/タグで世界の現在の状態を取得し、このディレクトリにスプレーする」という簡単な言い方はありますか?(それ以上のリビジョン管理は必要ありません。Gitに関する限り、「読み取り専用」です。)
多分そうではありません-チェックするだけです。
ありがとう。