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

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

18
CVSからGitへの移行:$ Id $同等ですか?
シンプルなソースコード管理ツールについて尋ねる多くの質問を読みましたが、Gitは合理的な選択のように思えました。私はそれを稼働させており、これまでのところうまくいきます。CVSについて私が気に入っている点の1つは、バージョン番号の自動インクリメントです。 これは分散リポジトリではあまり意味がないと理解していますが、開発者として、私はこのようなものが欲しい/必要です。理由を説明しましょう: 私はEmacsを使用しています。定期的に調べて、サードパーティパッケージのLispソースファイルの新しいバージョンを探します。ヘッダーによれば、ファイルfoo.elがバージョン1.3であるとします。最新バージョンを調べて、それが1.143や2.6などであることがわかった場合、かなり遅れていることがわかります。 代わりに、40文字のハッシュが2つ表示された場合、どちらが遅いかわからないか、どれだけ後であるかがわかりません。自分がどれだけ古くなっているのかを知るためだけにChangeLogを手動でチェックしなければならないとしたら、私はそれを絶対に嫌います。 開発者として、私が見るように、この礼儀を私の出力を使用する人々に拡張したいと思います(そして、多分私はだれでもだと冗談を言っていますが、それは少しおきましょう)。私は毎回自分の気の数、またはタイムスタンプなどをインクリメントすることを覚えておく必要はありません。それは本当のPITAであり、私は経験からそれを知っています。 それで、私にはどのような選択肢がありますか?$ Id:$に対応できない場合、他にどのようにして探しているものを提供できますか? 私の期待は、エンドユーザーにはGitがインストールされておらず、インストールされていてもローカルリポジトリがないことです(実際、そのように使用できるようにしないと期待しています)。

17
Github Windows「このブランチの同期に失敗しました」
Github Windows 1.0.38.1を使用していますが、コミット後に[同期]ボタンをクリックすると、エラーが発生します この問題をデバッグするにはどうすればよいですか?シェルの場合、どうすればよいですか? git pushまたはを実行すると、同期は正常に機能しますgit pullが、次にGithubウィンドウを使用して同期するときに、同じエラーが発生します。

8
キャレット(^)文字はどういう意味ですか?
削除されたファイルをgitで復元するのに役立つ質問への回答がこちらにありました。 解決策は git checkout <deleting_commit>^ -- <deleted_file_path> キャレット文字(^)は何をしますか?他の場所でgitで非常に便利なことをしているのを見たことがあります。それは魔法です。誰かが私のためにそれを台無しにして、それが何をするか教えてください?
124 git 

5
gitはファイルハッシュをどのように計算しますか?
(によって返されるツリーオブジェクトに保存されているSHA1ハッシュgit ls-tree)(で返されるファイルの内容のSHA1ハッシュが一致しませんsha1sum) $ git cat-file blob 4716ca912495c805b94a88ef6dc3fb4aff46bf3c | sha1sum de20247992af0f949ae8df4fa9a37e4a03d7063e - gitはファイルハッシュをどのように計算しますか?ハッシュを計算する前にコンテンツを圧縮しますか?
124 git  hash  sha1  checksum  git-hash 


11
Gitリモートヘッドを変更して、マスター以外のものを指すようにする
GitリモートのHEADリファレンスを「マスター」以外のものを指すように設定するにはどうすればよいですか? 私のプロジェクトには、「マスター」ブランチを使用しないというポリシーがあります(すべてのブランチには意味のある名前を付ける必要があります)。さらに、正規のマスターリポジトリにはssh://経由でのみアクセスでき、シェルアクセス(GitHubやUnfuddleなど)はありません。 私の問題は、リモートリポジトリにまだrefs / heads / masterへのHEAD参照があることですが、別のブランチをポイントする必要があります。これにより2つの問題が発生します。 レポを複製すると、これが 警告:リモートHEADは存在しない参照を参照しているため、チェックアウトできません。 それは混乱して不便です。 Webベースのコードブラウザーは、ツリーを参照するための基礎としてHEADに依存しています。次に、有効なブランチを指すHEADが必要です。

18
Gitの変更を破棄できないようです
コマンドラインから以下を確認した後: # On branch RB_3.0.10 # Changed but not updated: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: index.htm 次のコマンドを入力して、変更を破棄しようとしています。 git checkout -- index.htm しかし、git statusを再実行すると、まったく同じに見えます。チェックアウトが機能していないようです。私は何か間違ったことをしていますか?Windows / cygwinでGIT 1.6.1.2を使用しています。 # On branch …
124 git  revert 


10
参照されていないblobをgitリポジトリから削除する方法
マスターとリリースの2つのブランチを持つGitHubリポジトリがあります。 リリースブランチには、非常に大きなレポサイズ(> 250MB)の原因となるバイナリ配布ファイルが含まれていたため、クリーンアップすることにしました。 まず、リモートリリースブランチを削除しました。 git push origin :release 次に、ローカルのリリースブランチを削除しました。最初にを試しましたgit branch -d releaseが、gitは「エラー:ブランチの 'リリース'は現在のHEADの祖先ではありません」と言っていました。これは正しいので、git branch -D release強制的に削除しました。 しかし、私のリポジトリのサイズは、ローカルでもGitHubでも、まだ巨大でした。それで、私はのようなgitコマンドの通常のリストを実行しましたが、git gc --prune=today --aggressiveうまくいきませんでした。 SO 1029969でのCharles Baileyの指示に従うことで、最大のブロブのSHA1のリストを取得できました。次に、SO 460331のスクリプトを使用し てブロブを検索しました。最大の5つは存在しませんが、小さいブロブが見つかったため、スクリプトは機能しています。 これらのブログはリリースブランチのバイナリであると思います。ブランチは削除されたため、どういうわけか残ってしまいました。それらを取り除くための正しい方法は何ですか?
124 git 

3
Git:gitでマージされていないすべての変更をリストします
さまざまなトピックのブランチを作成し、不要になったときに定期的に削除するのではなく、約50のブランチになりました;) 私はブランチを削除しようとしましたが、それらのいくつかにはマージされていない変更があります。 私が欲しいのは、マスターにない私のリポジトリのブランチにどのような変更があるかを正確に確認する機能です。それを行う方法はありますか 前もって感謝します。
124 git  branch 

4
パッチを適用するときに、競合を解決する方法はありますか?
私は窓の上にいます。 さまざまな理由で、異なるsvnブランチの複数のgitインスタンスがあります。 リポジトリAの問題を修正し、パッチを生成して、リポジトリBに適用したい場合がよくあります。これは、競合がない限り問題なく動作します。 リベースするときは、フォルダを右クリックしてtortioseGitを使用し、解決オプションを選択します。これにより、競合を解消するための素晴らしいGUIが表示されます。 拒否されたパッチチャンクでこれを達成する方法はありますか? これがパッチを作成/適用するための私の現在のアプローチです git format-patch master --stdout > c:\\patch\\file.patch git apply --reject --ignore-space-change --ignore-whitespace c:\\patch\\file.patch
124 git  git-am  git-apply 

5
バッファ内のすべてのファイルをvimのディスクから更新します
ディスク上のバージョンからファイルを更新するコマンドは次のとおりです :e! バッファ内のすべてのファイルに対して同じことをするにはどうすればよいですか? 背景:バッファを含む1つのvimが開いている複数のブランチでgitを使用しているため、これが必要です。ブランチをチェックアウトするとき、vimをリフレッシュしたいと思います。
123 git  vim  buffer 

20
バージョン管理を使用する必要があるのはなぜですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 11ヶ月前に閉鎖。 この質問を改善する 私は作家がこれを言ったブログを読んでいました 「バージョン管理システムにチェックインしない限り、コードは存在しません。すべてのことに対してバージョン管理を使用してください。バージョン管理、SVN、Git、さらにはCVSも、それをマスターして使用してください。」 私はどのようなバージョン管理も使用したことがなく、それほど優れているとは思いません。私はそれをグーグルで見て、それを以前に見たことがありますが、喜んでそれが子供たちの条件に入れられる必要があるだけです。 私が今理解しているように、SVNのようなものは、ユーザーのグループや他の開発者が同じコードにアクセスできるようにコードをオンラインで保存するためのものです。コードを更新したら、新しいバージョンを送信すると、SVNは古いコードのコピーと更新した新しいコードのコピーを保持します。 これはそれの基本的な考えですか、それとも完全に間違っていますか? 私が正しければ、次のような場合にはあまり役に立たないかもしれません。 他の人にコードの作業をさせないでください。 他の人にコードを許可する予定はありません。
123 svn  git  version-control  cvs 

9
Git:status、diffなどの「変更されたコンテンツ」/ダーティサブモジュールエントリのリストを抑制できますか?
いつか(1.6.xのリリースの周りだと思います)gitはサブモジュール内の変更に気づきました。それは私を困らせるだけです: $ git status vendor | 変更されたgrep: #変更:ベンダー/レール(変更されたコンテンツ) $ git diff vendor / diff --git a / vendor / rails b / vendor / rails --- a / vendor / rails +++ b /ベンダー/レール @@ -1 +1 @@ -サブプロジェクトコミット046c900df27994d454b7f906caa0e4226bb42b6f +サブプロジェクトコミット046c900df27994d454b7f906caa0e4226bb42b6f-dirty やめてください。 編集: わかりましたので、私は答えを持っています。今私は別の質問があります: これ入れても~/.gitconfigいい?私のイニシャルからは、私はできないように見え、パッチをスキミングすることによって有望なものは何も見当たりませんでした。(私はまだエイリアスを作ることができると思います。)

1
Gitリポジトリのマスターに対して古いブランチを更新する
古いブランチになったGitリポジトリ(ローカルおよびリモート)があります。このブランチをマスターブランチで最新の状態にしたいのですが、方法はわかりません。また、おそらく多くのマージ競合が発生します。 この古いブランチをマスターブランチと同じ状態にするには、どうすればよいですか?
123 git  git-branch 

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