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

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

5
特定のタグをgit cloneする方法
gitのクローン(1)マニュアルページ --branch また、タグを取得して、結果のリポジトリのコミット時にHEADをデタッチできます。 私は試した git clone --branch <tag_name> <repo_url> しかし、それは機能しません。それは返します: warning: Remote branch 2.13.0 not found in upstream origin, using HEAD instead このパラメーターの使用方法
192 git  git-clone  git-tag 


15
ローカルgitブランチが存在するかどうかを確認するより良い方法はありますか?
次のコマンドを使用して、リポジトリにローカル gitブランチがbranch-name存在するかどうかを確認しています。これは正しいです?もっと良い方法はありますか? これはスクリプト内で行っていることに注意してください。このため、可能であれば配管コマンドを使用したいと思います。 git show-ref --verify --quiet refs/heads/<branch-name> # $? == 0 means local branch with <branch-name> exists.

3
git repoを新しい.gitignoreファイルと再同期します
gitignoreファイルを更新した後にgitリポジトリを「更新」することは可能ですか? gitignoreにignorations(?)を追加したばかりで、新しいファイルと一致するリポジトリ内の既存のものを削除したいと考えています。
191 git 


13
すべてのGitコマンドの最初に「git」を入力しないようにするにはどうすればよいですか?
gitすべてのGitコマンドの先頭に単語を入力しなくても済むようにする方法があるかどうか疑問に思っています。 gitコマンドプロンプトを開いて「Gitモード」に入った後、最初に一度だけコマンドを使用する方法があったらいいですね。 例えば: git> その後、入力するすべてのコマンドはデフォルトでGitコマンドとして解釈されます。 MySQLシェルを使用してデータベースコマンドを作成する方法と同様の方法で: mysql> これgitにより、1日に何百回も入力する必要がなくなります。 注:git-bash Windowsではを使用しています。

13
Gitプッシュエラー:古いリンクを解除できません(権限が拒否されました)
リモートサーバーで、リポジトリのgitチェックアウトを行うためにpost-receiveフックを設定しています。 #!/bin/sh GIT_WORK_TREE=/var/www/<website> git checkout -f しかし、ローカルマシンからサーバーのgitリポジトリにプッシュすると、次のエラーメッセージが表示されます。 remote: error: unable to unlink old '<file>' (Permission denied) これは何度も表示され、ほぼすべてのファイルに対して1つのエラーメッセージが表示されます。 しかし、私はgitを使用して変更できるREADME.txtファイルを持っています。ここにその権限があります。 -rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt しかし、まったく同じ所有者と同じ権限を持つ他のファイルは、私にそのエラーを与えます。 別のWebサイトの別のローカルリポジトリには、ローカルマシンのユーザー名を所有者とするファイルがあり、リモートサーバーにプッシュすると、ファイルのリモートサーバーの所有者が尊重され、魅力のように機能します。 明らかにそれは権限関連のエラーのようですが、私はそれを修正する方法、何か提案を見つけることができませんか?

2
チェリーピックの作業後にgitはどのようにマージされますか?
masterブランチがあるとしましょう。 次に、 newbranch git checkout -b newbranch そして、2つの新しいコミットを作成しnewbranchます:commit1とcommit2 次にマスターに切り替えて cherry-pick git checkout master git cherry-pick hash_of_commit1 gitk調べてみると、commit1とその厳選されたバージョンではハッシュが異なるため、厳密には2つの異なるコミットであることがわかります。 最後にマージnewbranchしmasterます: git merge newbranch 同じハッシュを2回適用する必要があることを示しているため、ハッシュが異なる2つのコミットが問題なくマージされたことを確認してください。 gitはマージ中に実際にコミットの内容をスマートに分析し、変更を2回適用しないようにするか、これらのコミットが内部でリンクされているとマークされていると判断しますか?

5
Gitサブモジュールの追加:「ローカルにgitディレクトリが見つかりました」の問題
私は実際に、git submoduleサブコマンドを含め、gitの使用方法を学習しようとしています。SSHを使用してgitリポジトリをホスト、プッシュ、プルできるサーバーをすでにセットアップしています。このサーバーにメインのgitリポジトリ「Travail」を作成しました。その中にすべてのプロジェクトをサブモジュールとして配置します。 私のTravailリポジトリでは、次の場所にサブモジュールとしてすでに私のプロジェクトを追加tools/libftしています。このサブモジュールを開発し、プッシュおよびプルすることができます。 しかし、別のサブモジュール(fdfという名前で、サーバー上のfdf.gitから)を追加しようとすると、次の問題が発生します。 git submodule add ssh://XXX.XXX.XXX.XXX:XXXXX/opt/git/fdf.git projets/fdf 'projets / fdf'のgitディレクトリは、リモートでローカルにあります:origin ssh://git@XXX.XXX.XXX.XXX:XXXXX / opt / git / fdf.gitこのローカルgitを再利用する場合ssh://XXX.XXX.XXX.XXX:XXXXX / opt / git / fdf.gitから再度クローンを作成する代わりに、「-force」オプションを使用します。ローカルのgitディレクトリが正しいリポジトリではない場合、またはこれが何を意味するのかわからない場合は、「-name」オプションで別の名前を選択してください。 実際にはサブディレクトリはありません projets/ git submodule syncサブモジュールの元のリポジトリへのURLが変更されている可能性がある.gitmodulesファイルを使用または編集する必要がある別のスレッドを読みました。 しかし、私の.gitmodulesファイルには、最初のサブモジュール(tools / libft)に関する情報のみが含まれ、projets / fdfに関する情報は含まれていません。 [submodule "tools/libft"] path = tools/libft url = ssh://git@XXX.XXX.XXX.XXX:XXXXX/opt/git/libft.git フランス人の学生だったので、英語のドキュメントを見逃していたかもしれませんが、検索したのになぜこの問題が発生したのか理解できません。 解決策があれば嬉しいですが、説明だけでも役に立ちます。


6
git:ローカルリポジトリのファイルとオリジンの差分
ローカルリポジトリにあるファイルとにあるファイルの違いを見つけたいのですがorigin master。 が存在することはわかっていますがgit diff、それをこの1つの特定のファイルに分離したいだけです。 簡単にするために、ファイルに名前が付けられfile1.txt、ローカルファイルパス=が[local_path]あり、元のファイルにはfilepath =があるとし[remote-path]ます。 入力する必要があるgitコマンドは何ですか? 編集:非常に洞察に満ちた入力をありがとうございました。Eclipseを使用している場合(私は以前述べたはずですが)、右クリック->比較->ブランチ、タグ、またはリファレンス->適切なバージョンを選択するだけで、すぐに使用できることがわかりました。
190 git  git-diff 

15
Git Fatal:プロトコル「https」はサポートされていません
Githubのフォークガイド(https://guides.github.com/activities/forking/) を使用していて、リポジトリをコンピューターに複製しようとしています。ただし、次のコマンドを実行します。 $ git clone https://github.com/./Spoon-Knife.git Cloning into 'Spoon-Knife'... fatal: protocol 'https' is not supported SSHでも試してみました: $ git clone git@github.com:./Spoon-Knife.git Cloning into 'Spoon-Knife'... Warning: Permanently added the RSA host key for IP address '.' to the list of known hosts. git@github.com: Permission denied (publickey). fatal: Could not read from remote …
190 git 


3
gitでブランチを削除すると、ブランチが履歴から削除されますか?
svnから来て、gitに慣れてきました。 ブランチがgitで削除されると、履歴から削除されますか? svnでは、削除操作を元に戻す(リバースマージ)ことで、ブランチを簡単に回復できます。svnでのすべての削除と同様に、ブランチは実際には削除されず、現在のツリーから削除されるだけです。 ブランチが実際にgitの履歴から削除された場合、そのブランチからマージされた変更はどうなりますか?それらは保持されますか?

4
gitリポジトリを特定のコミットに切り替える方法
私のgitリポジトリでは、以下のようにgitログで5つのコミットを行いました。 commit 4f8b120cdafecc5144d7cdae472c36ec80315fdc Author: Michael Date: Fri Feb 4 15:26:38 2011 -0800 commit b688d46f55db1bc304f7f689a065331fc1715079 Author: Michael Date: Mon Jan 31 10:37:42 2011 -0800 commit b364f9dcec3b0d52666c4f03eb5f6efb7e1e7bda Author: Michael Date: Wed Jan 26 13:33:17 2011 -0800 commit 4771e26619b9acba3f059b491c6c6d70115e696c Author: Michael Date: Wed Jan 26 11:16:51 2011 -0800 commit 6e559cb951b9bfa14243b925c1972a1bd2586d59 Author: Michael Date: …
189 git 

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