タグ付けされた質問 「git」

Gitは、オープンソースの分散バージョン管理システム(DVCS)です。このタグは、Gitの使用法とワークフローに関連する質問に使用します。単にリポジトリがGitHubでホストされているからといって、Git関連の問題には[github]タグを使用しないでください。また、Gitリポジトリが関係する一般的なプログラミングの質問には、このタグを使用しないでください。

6
現在使用しているgitタグを表示しますか?
現在チェックアウトされているタグを見つけられません。 私がする時: git checkout tag1 git branch どのタグを付けているのかわかりません。ログするだけです: * (no branch) master チェックアウトされているタグを見つけることはできますか?上記の例では、これはになりますtag1。

12
gitを使用して変更ログを管理する良い方法は?
私はしばらくGitを使用していますが、最近、変更を追跡しやすく、各クライアントが実行しているバージョンを確認できるように、リリースにタグを付けるためにそれを使用し始めました(残念ながら、現在コードで義務付けられています)各クライアントが独自のPHPサイトのコピーを持っていることを変更します。 いずれにせよ、私たちは勢いをつけ始めています。前回のリリース以降に何が変わったかを人々に示すことができれば本当にいいと思いました。問題は、どうすればよいかわからないため、変更ログを維持していないことです。この特定の時間に、ログを実行して手動でログを作成できますが、すぐに疲れるでしょう。 「git changelog」と「git manage changelog」をグーグルで検索してみましたが、コード変更のワークフローと、changelogとどのように一致するかについて実際に語っている内容は見つかりませんでした。私たちは現在、Rein Henrichsの開発ワークフローに従っているので、それに沿ったものが好きです。 私が欠けている標準的なアプローチはありますか、またはこれは誰もが自分のことをする領域ですか? コメント/回答ありがとうございます!
214 git  github  changelog 

9
gitでブランチをダウンロードする方法は?
GitHubでホストされているプロジェクトがあります。1台のコンピューターにブランチを作成し、次のコマンドで変更をGitHubにプッシュしました。 git push origin branch-name 今、私は別のコンピューターを使用しています。そのブランチをダウンロードしたいと思います。だから私は試しました: git pull origin branch-name ...しかし、これは私の新しいブランチの変更で私のマスターブランチを上書きすることでした。 既存のブランチを上書きせずにリモートブランチを適切にプルするには、何をする必要がありますか?
214 git  branch 

11
特定のブランチのみのコミットを取得するためのGitログ
特定のブランチの一部であるすべてのコミットをリストしたい。 以下を使用すると、ブランチからのすべてのコミットがリストされますが、親(マスター)からのコミットもリストされます git log mybranch 私が見つけた他のオプションは、マスターが到達可能なコミットを除外して、私が欲しいものを与えることでしたが、他のブランチ名を知る必要を避けたいです。 git log mybranch --not master 私は使用しようとしましたgit for-each-refが、それはまたmybranchをリストしているので、実際にはすべてを除外しています: git log mybranch --not $(git for-each-ref --format '^%(refname:short)' refs/heads/) 更新: 私はしばらく前に見つけた新しいオプションをテストしていますが、今までこれが私が探していたものである可能性があるようです: git log --walk-reflogs mybranch 更新(2013-02-13T15:08): --walk-reflogsオプションは適切ですが、reflogsの有効期限があることを確認しました(デフォルトは90日、gc.reflogExpire)。 私が探していた答えを見つけたと思います: git log mybranch --not $(git for-each-ref --format='%(refname)' refs/heads/ | grep -v "refs/heads/mybranch") 使用可能なブランチのリストから現在のブランチを削除し、そのリストをログから除外しています。この方法では、mybranchによってのみ到達されるコミットのみを取得します。
214 git 

9
git履歴の特定のリビジョンをどのように削除しますか?
gitの履歴が次のようになっているとします。 1 2 3 4 5 1–5は個別のリビジョンです。1、2、4、5を維持したまま3を削除する必要があります。これを行うにはどうすればよいですか? 削除するリビジョンの後に何百ものリビジョンがある場合、効率的な方法はありますか?
213 git 

4
外部リポジトリサブモジュールを使用するようにgitプロジェクトを設定するにはどうすればよいですか?
リモートリポジトリを取り込むリポジトリを作成したいのですが。 たとえば、サブモジュールとしてjQueryがあるとします。 git://github.com/jquery/jquery.git jQueryをサブモジュールとしてリポジトリを作成し、自分の外部をリモートリポジトリとして追加するプロセスはどうなるでしょうか。 また、これがセットアップされたら、自分のリモートにプッシュ/プルした場合、外部はそのまま残りますか?

5
GPGキーでGitにコミットを「自動署名」する方法はありますか?
作成された各コミットまたはタグにGitが常に署名するようにする簡単な方法はありますか? 私はそれを次のようなもので試しました: エイリアスコミット=コミット-S しかし、それはトリックをしませんでした。 これを実現するために別のプログラムをインストールしたくありません。簡単にできますか? 余談ですが、おそらくHomebrewなどのプロジェクトの単一のコミットを送信するため、コミットには署名せず、タグだけを作成する必要があります。

2
作成者のすべてのブランチからログを一度にgitするにはどうすればよいですか?
著者が行ったすべてのコミットのレポートを取得する必要があります。これまでのところ、次のコマンドをラップするスクリプトがあります。 git log --pretty=format:"%ad:%an:%d:%B" --date=short --reverse --all --since=2.months.ago --author=Petr 正常に動作します。ただし、現在のブランチのアクションのみを報告します。現在のブランチだけでなく、すべてのブランチからの作成者のコミットメッセージをログに記録するオプションはありますか? 言い換えれば、gitはリポジトリ内のすべてのコミットの(日時によって)逆ソートされたシーケンスを作成し、そのシーケンスからログ情報を抽出できますか? 解決済み:(以下のコメントからコピーされ、それ以外の場合は非表示) 問題は、2つのブランチで同時に動作する1つのリポジトリと2つのクローンがあることです。元のリポジトリに変更をプッシュしましたが、クローンされたリポジトリに変更をフェッチするのを忘れていました。このよう--allにして、クローンされたリポジトリに使用すると機能しないように見えました。
213 git 


11
ベアリポジトリと非ベアリポジトリの実際的な違いは何ですか?
私は、Gitのベアおよび非ベア/デフォルトのリポジトリについて読んでいます。それらの違いについて、そして理論的には、なぜ私が裸のリポジトリに「プッシュ」しなければならないのかについて、よく理解することができませんでした。ここに取り引きがあります: 現在、3台のコンピューターでプロジェクトに取り組んでいるのは私だけですが、後でプロジェクトに関わる人が増えるので、バージョン管理にGitを使用しています。私はすべてのコンピューターでベアリポジトリのクローンを作成し、そのうちの1つで変更を終えたら、コミットして変更をベアリポジトリにプッシュします。私が読んだことから、ベアリポジトリには「ワーキングツリー」がないため、ベアリポジトリを複製しても「ワーキングツリー」はありません。 作業ツリーには、プロジェクトからのコミット情報、ブランチなどが格納されていると思います。これは、ベアリポジトリには表示されません。そのため、作業ツリーでコミットをリポジトリに「プッシュ」する方がよいようです。 それでは、なぜベアリポジトリを使用する必要があるのでしょうか。実用的な違いは何ですか?それは、プロジェクトに取り組んでいるより多くの人々にとって有益ではないと思います。 この種の仕事のためのあなたの方法は何ですか?提案?
213 git  repository  git-bare 

5
正確に.gitignoreとは何ですか?
私はGithubリポジトリを作成したばかりで、.gitignoreファイルの目的が何か疑問に思っていました。最初は作成せずに作成しましたが、ほとんどのリポジトリに作成されているため、追加しました。持っている必要がありますか?私はそれを無視できますか、それとも用途がありますか?少し調べてみましたが、具体的な説明はありませんでした。
212 git  github  gitignore 

3
更新後にEclipse / EGitに既存のリポジトリ情報を認識させるにはどうすればよいですか?
EGitプラグイン1.0.0を使用してEclipseをHeliosからIndigoにアップグレードした後、私のプロジェクトはすべて、それぞれのgitリポジトリに関するメタデータを失ったようです。 Heliosでは、すべてのEclipseプロジェクトはそれ自体がgitリポジトリでした。Indigoに更新するとき、Heliosのワークスペースを引き続き使用できることを望みました。更新後も、すべてのプロジェクトはワークスペースに残っています。各プロジェクトディレクトリには.gitサブディレクトリが残っていますが、Eclipseは各プロジェクトをgitリポジトリではないかのように処理しているようです。 したがって、プロジェクトフォルダーにはすべてのgitメタデータが残っていますが、Eclipseはそれらを認識しません。git機能を「再アクティブ化」する別の方法はありますか?
211 git  eclipse 

5
特定のコードベースの変更を一意に識別するために、どのくらいのgit shaが「一般に」必要と考えられていますか?
たとえば、Gitリポジトリでcommitのためにディレクトリに名前が付けられているディレクトリ構造を構築する場合、目を出血させないように短くするが、衝突する可能性があるほど長くする必要がある場合無視できますが、SHAサブストリングのどのくらいが一般的に必要ですか? この変更を一意に識別したいとしましょう:https : //github.com/wycats/handlebars.js/commit/e62999f9ece7d9218b9768a908f8df9c11d7e920 最初の4文字まで使用できます:https : //github.com/wycats/handlebars.js/commit/e629 しかし、それは危険だと思います。しかし、2〜3年で、たとえば3万個の変更がある可能性があるコードベースを想定すると、8文字を使用した場合に衝突する可能性は何ですか?12?この種のものに一般的に受け入れられると考えられる数はありますか?
211 git  github  sha 

11
msysgitでNotepad ++(またはその他)を使用するにはどうすればよいですか?
msysgitでNotepad ++(またはvim以外のその他のエディター)を使用するにはどうすればよいですか? 私は次のことをすべて試しましたが、役に立ちませんでした。 git config --global core.editor C:\Program Files\Notepad++\notepad++.exe git config --global core.editor "C:\Program Files\Notepad++\notepad++.exe" git config --global core.editor C:/Program Files/Notepad++/notepad++.exe git config --global core.editor C:\\Program Files\\Notepad++\\notepad++.exe

6
コミット後の.gitignore
Githubでホストされているgitリポジトリがあります。多くのファイルをコミットした後、ファイルを作成.gitignoreして除外する必要があることに気付きました。.exe.obj ただし、これらのコミットされたファイルはリポジトリから自動的に削除されますか?それを強制する方法はありますか?
210 git  github  gitignore 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.