問題タブ [git-commit]
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 reset --hard を元に戻す
私は自分の仕事を回復しようとしています。私はばかげてやったがgit reset --hard
、それ以前はやっただけget add .
で、やらなかったgit commit
。助けてください!これが私のログです:
git reset --hard
この状態で元に戻すことは可能でしょうか?
git - Git コミット スタイル: 変更されたすべてのファイルを一度に変更するか、一度に 1 つずつ変更するか?
多くのファイルに対して 1 回のコミットで夜間に作業を保存しています。ファイルごとにコミットした方が良いのだろうかと思いますが、これはより多くの作業のようです。
今のままで問題ありませんが、コードを GitHub に置く予定なので、わかりやすくしたいと思っています。
git を使用している残りの皆さんは何をしているのか気になります。また、私のためにそれを綴ることができれば。私は Git が初めてで、Windows で TortoiseGit と gitk を使用しています。
git - Git でのマージとコミットの混乱
私は Git の初心者で、何が起こっているのかよくわかりません。私の相棒と私は一緒にプロジェクトに取り組んでいます。
リモートサーバーからすべてのファイルを取得したgit fetch
ので、今ではたくさんのファイルがあります。
私はそれらのいくつかを編集し、彼はそれらのいくつかを編集します。
私は毎日フェッチを続けており、彼はいくつかのファイルを変更して更新したと言い始めましたが、これらの変更は私の側には表示されません。
Windows で Git GUI を開くと、左側に 2 つのパネルがあります。
1 つは
Unstaged Changes
、これは、私が変更したものであり、変更しない限りローカル リポジトリに更新されないことを意味すると解釈していadd
ます。もう一人は言う
Staged Changes (Will Commit)
。このウィンドウ内でいくつかのファイルをクリックすると、編集中のファイルには表示されていない、友人が行った更新が表示されます。また、自分が行った変更も表示されていると思います。git add .
ディレクトリにすべてのファイルを追加しますGit GUI でボタンを押すと、2 つのサイド パネル noと no の
commit
いずれにもファイルがなくなりました。Unstaged Changes
Staged Changes (Will Commit)
すべてのファイルを確認しましたが、私の側と友人の側の両方からの変更が 1 つのファイルにマージされているようです。
何が起こったのか、まだ100%確信が持てません。
質問 1: 私はこれを正しく行いましたか?
質問 2: 具体的には何をし
merge
ますか?
私はマージを続けておりgit merge origin/master
、マージは気の毒なことをしていないようです。commit
現在のバージョンの記録をいくつかのハッシュコードに書き留めるだけだと思っていましたが、実際には私が思っていたことをやっているようですcommit
-merge
それは変更をマージしています.
非常に混乱しているだけで、長々とした質問で申し訳ありません。
git - git commit にパラメータを追加する
クライアントのタスク/プロジェクトを追跡するためのカスタムメイドのシステムがあります。チェックリストを手動で追加してマークを付け、多くの場合、各ポイントにかかった時間を追加します。これは非常に便利ですが、git でも同じ情報を提供しているため、少し冗長です。そのため、何らかの方法で git に追加のパラメーターを追加して、何かにかかった時間を示し、このデータを抽出してデータベースに保存することを考えています (通常は PHP/MySQL を使用します)。これについてはどうすればよいでしょうか?
私は次のことを考えています:
git commit -m "Adding search functionality" 15
そして、このタスクの説明とともに、後で処理するために 15 (分) を抽出できるので、別途 15 分かかった「検索機能の追加」を追加する必要はありません。この 2 番目のパラメーターを受け取り、それを変数として使用して PHP スクリプトに渡すフックを考えています。これは実現可能ですか?
git - 「git commit」で変更が保存されないのはなぜですか?
私はgit commit -m "message"
このようにしました:
しかしその後、私が行うgit status
と、同じ変更されたファイルが表示されます。
私は何を間違っていますか?
git - Web ベースの git commit ツール
Google 検索のスキルが不足しているのかもしれませんが、ゼロから作成する前に、
既製の Web ベースの git commit ツールはありますか?
私がする必要があるのは、ユーザーが Web インターフェイスから次のことをできるようにすることです。
- 「git status」からのリストを持っています
- 彼がコミットしたいファイルを選択します(おそらく差分も参照してください)-これにより、各ファイルにgit addが実行されます
- メッセージでコミットする
- リモートにプッシュ
これは、コマンド ライン スキルを持たないユーザーがテンプレートの変更をプッシュできるようにするためです。
ありがとう
git - Git: ゆるいコミットをすべて再パックする方法
git gc
and (さまざまなオプションを使用して)を使用した後、フォルダーにはgit repack
まだ4825個のゆるいコミット.git/objects
があります。それらすべてを残りのパックファイルまたは別のパックファイルに入れたいと思います。
私は多くのコミットの書き換え (修正 + リベース) を行っているため、到達不能なコミットが多数あるのは完全に正常です。私の .gitconfig には、reflog と到達不能なコミットを長期間保持するためのこれらのパラメーターが含まれています。
意味があるかどうか疑問に思うかもしれませんが、私はすでに必要であり、数か月前に行われたいくつかのコミットを回復しました. 優先度の高いブランチの新しいセットで何ヶ月も開発し、その後、優先度の低い古いブランチで継続することがよくあります。
この質問の主な理由は、git gui
これを何度も行ったにもかかわらず、データベースを圧縮するように文句を言い続けることです。これらの緩いコミットをパックできない場合、この「不平」は のバグである可能性がありますgit gui
。
git - git リポジトリへの最初のコミットに関する問題
私は Git を初めて使用し、セットアップして最初のリポジトリを作成しました。最初のコミットとして README を追加しようとしています。http://help.github.com/create-a-repo/の手順を正確に実行してきましたが、この手順で行き詰まります。
次のエラーが表示されます。
コマンドを間違えたためだと思いgit remote add
ます。ユーザー名とリポジトリ名を置き換えるのを忘れていました。正しい引数で再試行すると、次のようになります。
これをクリーンアップして正しいリモコンを入手するにはどうすればよいですか?
git - Git commit -「追跡されていないファイル」?
を実行するgit commit -a
と、次のように表示されます。
これらの追跡されていないファイルはどういう意味ですか? すべての変更は実際に追跡されています。ここで追跡されていないファイルについてgitが警告している理由がわかりません。
編集:
OK、混乱した返信がたくさんあります。これが私の後に起こることgit commit -a
です。
ご覧のとおり、変更が適用された 4 つのファイル以外には何もありません。
私の質問は次のように言い換える必要があります:このコミットのすべての変更が追跡されているのに、追跡されていないファイルについて git が警告するのはなぜですか?
つまり、git commit メッセージの untracked 警告は不要ですか?
git - SVN には git のコミット (プッシュなし) と同等のものがありますか?
基本的に、変更をプッシュしたり、ブランチを切り替えたりせずに、変更をステージングしたいと考えています。これによりcommit
、適切な停止ポイントにいるときにいくつかの作業を行うことができ、その後、同じブランチで作業を続けることができます。もし失敗しても、revert
新しい変更を加えれば、またできるcommit
。
これらの変更を追跡するために SVN で機能ブランチを作成できることはわかっていますが、同じブランチ/トランクにとどまりながらそうしたいと思います。git stash
SVNにはその機能がないようですが、同等のものでも十分です。