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

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

5
post-updateフックを使用して別のリポジトリで「git pull」を実行すると、「致命的:gitリポジトリではありません:「。」」が取得されます
私はgitを初めて使用するので、ここで用語を誤用した場合は謝罪し(訂正してください)、最善を尽くします。 裸のgitリポジトリ(ハブ)と開発サイトの作業用コピー(プライム)をWebサーバーにセットアップしようとしています。私はこの記事の後でそれをパターン化しようとしました。ハブリポジトリがプッシュされるたびに開発作業コピーを更新してほしい。私はこのための適切なフックがであるという印象を受けていますpost-update。 #!/bin/sh whoami cd /path/to/working-copy/ RET=`git pull` echo $RET 更新 ローカルリポジトリからベアハブに変更をプッシュすると、更新後のスクリプトから次の出力が得られます。 remote: sites remote: fatal: Not a git repository: '.' ただし、ユーザー「sites」としてサーバーにSSH接続し、このスクリプトを手動で実行すると、うまく機能します。このフックまたはスクリプトで何が問題になっているのかに関するアイデアはありますか?
89 git  githooks 

5
.gitignore NuGet exclude packages / include packages / repositories.config
NuGetを使用するVisual Studioプロジェクトの.gitignoreを作成しようとしています。それは現在含まれています: \packages/* !packages/repositories.config これはフォルダー内の何も無視しません。すべてが追加でステージングされます。私も試しました: packages/ !packages/repositories.config これにより、packagesフォルダー内のすべてが無視され、packages / repositories.configは含まれません。 何が悪いのですか?
89 git  nuget  gitignore 

4
特定のファイルタイプを除いて、特定のフォルダーの下にあるすべてのファイルを再帰的に正しく無視する
私は同様の質問(見てきた1、2および3を)が、私は彼らからの適切な解決策を得ることはありません。 特定のファイルタイプを除いて、特定のフォルダーの下にあるすべてのファイルを無視する必要があります。フォルダは、ルートパスのサブディレクトリです。フォルダに名前を付けますResources。複雑にしたくないので、名前が付けられResourcesているすべてのフォルダの下にあるファイルは無視してください。 これが最も一般的な解決策です(すべての重複する質問で) # Ignore everything * # Don't ignore directories, so we can recurse into them !*/ # Don't ignore .gitignore !.gitignore # Now exclude our type !*.foo このソリューションの問題は、新しく追加されたファイルの追跡を停止することです(*すべてのファイルを無視するため)。すべてのファイルタイプを除外し続けたくありません。新しいファイルが追加された場合にそれを表示する通常の動作が必要git statusです。 私は最終的にここで解決策を得ました。解決策は.gitignore、Resourcesフォルダーに別のファイルを追加することです。これは正しく動作します。 1つの無視ファイルで同じことを達成できますか?さまざまなディレクトリにある無視ファイルがたくさんあるのは少し不格好です。 これは私が達成しようとしていることです: # Ignore everything under Resources folder, not elsewhere Resources # Don't ignore directories, so we can …

9
最初の10をgitに記録
2つの質問: 最初から最後までgitの最初の10コミットを表示する方法。(ブランチなし) コミットインデックスを指定してログに記録する方法。(2番目または3番目を表示) 私はgitが親を使用してコミットをリンクしていることを知っています。コミットを最初から最後まで簡単に記録できます。お気に入り:git log HEAD~10 しかし、最初から最後までクエリする必要がありますが、可能ですか?
89 git  logging 

2
git push.default = currentとpush.default = uploadの違いは何ですか?
git-configのマニュアルページには、push.defaultの次のオプションがリストされています。 nothing - do not push anything. matching - push all matching branches. All branches having the same name in both ends are considered to be matching. This is the default. upstream - push the current branch to its upstream branch. tracking - deprecated synonym for upstream. current - push …

30
pip接続の失敗:インデックスベースURLをフェッチできませんhttp://pypi.python.org/simple/
を実行するsudo pip install git-reviewと、次のメッセージが表示されます。 Downloading/unpacking git-review Cannot fetch index base URL http://pypi.python.org/simple/ Could not find any downloads that satisfy the requirement git-review No distributions at all found for git-review Storing complete log in /home/sai/.pip/pip.log 誰かがこれについて何か考えを持っていますか?
89 python  git  ubuntu  pip  git-review 

6
.gitignore構文:bin vs bin / vs. bin / * vs. bin / **
追加の違いは何ですかbin、bin/、bin/*そしてbin/**私の.gitignoreファイルで?私はこれまで使用してきましたがbin/、他の .gitignoreファイルを見ると(日食ファイルでは、二重星と単一星が次のように一緒に使用さtmp/**/*れています:どうしたのですか?)最初の2つのパターンも広く使用されていることがわかります。誰かが3つの違いを説明できますか?
89 git 

8
移動するとき、コンピューター間のgitリポジトリ同期?
デスクトップPCとラップトップを持っていて、デスクトップで作業することもあれば、ラップトップで作業することもあるとしましょう。 gitリポジトリを前後に移動する最も簡単な方法は何ですか? gitリポジトリーを同一にして、他のコンピューターで離れたところから続行できるようにします。 両方のコンピューターに同じブランチとタグがあることを確認したいと思います。 ありがとうヨハン 注:SubVersionでこれを行う方法は知っていますが、これがgitでどのように機能するかについて興味があります。簡単な場合は、2台のPCを同期できる従来のサーバーとして3台目のPCを使用できます。 注:両方のコンピューターでLinuxが実行されています。 更新: それでは、サーバー上の裸のgitリポジトリとKingCrunchのpushコマンド構文を使用してXANI:sのアイデアを試してみましょう。この例では、2つのクライアントと1つのサーバーがあります。 それでは、最初にサーバー部分を作成しましょう。 ssh user@server mkdir -p ~/git_test/workspace cd ~/git_test/workspace git --bare init それで、他のコンピューターの1つから、クローンを使用してリポジトリのコピーを取得しようとします。 git clone user@server:~/git_test/workspace/ Initialized empty Git repository in /home/user/git_test/repo1/workspace/.git/ warning: You appear to have cloned an empty repository. 次に、そのリポジトリに移動してファイルを追加します。 cd workspace/ echo "test1" > testfile1.txt git add testfile1.txt git …

9
未使用のオブジェクトをgitリポジトリから削除するにはどうすればよいですか?
誤って、最新のコミットで巨大なバイナリファイルをGitリポジトリに追加、コミット、プッシュしました。 そのコミット用に作成された/作成されたオブジェクトをGitに削除させて、.gitディレクトリを再び適切なサイズに縮小するにはどうすればよいですか? 編集:あなたの答えをありがとう。私はいくつかの解決策を試しました。何も機能しませんでした。たとえば、GitHubのものは履歴からファイルを削除しましたが、.gitディレクトリサイズは減少していません。 $ BADFILES=$(find test_data -type f -exec echo -n "'{}' " \;) $ git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch $BADFILES" HEAD Rewrite 14ed3f41474f0a2f624a440e5a106c2768edb67b (66/66) rm 'test_data/images/001.jpg' [...snip...] rm 'test_data/images/281.jpg' Ref 'refs/heads/master' was rewritten $ git log -p # looks nice $ rm -rf .git/refs/original/ $ git …
89 git  file  object  binary 

8
Gitプルは不可能、マージされていないファイル
私はこれに関する同様の質問をすべて読みました。次のいずれも機能していないようです。 Delete offending files git reset --hard HEAD git stash git pull 変更を隠し、リポジトリからプルするほぼすべての組み合わせにより、マージできないファイルが生成されます。ローカルの変更をすべて破棄してリモートを使用したいのですが、再度クローンを作成することはできません(開発者がこれを実行しようとすると、帯域幅とインターネットの使用制限が発生します)。どうすればよいですか? 試したばかり: git stash git pull また、動作しませんでした。 より詳しい情報 ローカルコミットが1つあり、アップストリームにもコミットがあります。私はこのように試しましたgit pull --rebaseが、それでも正しく機能していません...それは私にエラーを与えます-「未解決の競合のために終了します」。私が行う場合git stash, git reset --hard HEAD, git pull --rebase、私はエラーを取得する「プルができない、マージされていない変更...」
89 git 


6
githubリポジトリの特定のタグで「goget」を実行する方法
InfluxDBデータベース(バージョンv0.8.8)を使用してコンパイルしようとしています go get github.com/influxdb/influxdb しかし、これはマスターブランチをプルするので、v0.8.8タグが必要です。 私はやろうとしました: go get github.com/influxdb/influxdb/releases/tag/v0.8.8しかし、これは見つけることができないと言って失敗します。 私はまた、定期的に実行しようとしましたgo getマスターブランチのを、その後、手動で使用してタグチェックアウトするgitにはGOPATH/src/github...corretバージョンを設定するために。 最後のアプローチを使用した場合の問題は、依存関係をプルgo get -u -f ./...しようとすると、マスターブランチでそれらを見つけようとし、それらの一部がマスターブランチに存在しないことです... TL; DR:go get特定のgithubタグで実行し、正しい依存関係をプルします。
89 git  go  github 

11
git commitエラー:pathspec'commit 'がgitで認識されているファイルと一致しませんでした
RubyアプリをHerokuにアップロードしようとしています。最初git initに入力git add .してから入力してから使用しますgit commit -m initial commit。 を使用するたびにgit commit -m、次のようなエラーメッセージが表示されます。 git commit error:pathspect'commit 'は、gitが認識しているどのファイルとも一致しませんでした。 議論の順番が間違っているため、これが起こっていると言われています。 私が気付いたのは、使用git add .すると次の行に移動するだけなので、追加されているファイルが一覧表示されないことです。 ファイルが実際に追加されていないため、この問題が発生していると思われます。 この問題を修正する方法についてアドバイスをいただければ幸いです。
89 git  command-line 

9
1つのディレクトリに2つのgitリポジトリ?
1つのディレクトリに2つのgitリポジトリを持つことは可能ですか?私はそうは思わないだろうが、私が尋ねると思った。基本的に、作業しているすべてのマシンに共通であるはずのホームディレクトリ構成ファイル(.emacsなど)をチェックインしたいのですが、ローカルファイル(.emacs.localなど)の2番目のリポジトリがあります。マシン固有の構成。私がそれを行うために考えることができる唯一の方法は、サブディレクトリにローカル設定を持ち、メインのgitリポジトリからそのサブディレクトリを無視することです。他のアイデアはありますか?

5
コミットをマージまたは追加せずに、ブランチbからaに変更を適用する
私のシナリオでは、ビルドプロセスに大幅な改善を加えたブランチ(ブランチA)と、無関係の機能に取り組んでいるブランチ(ブランチB)があります。ですから、ブランチBをハッキングしているときは、ビルドをより速く、より簡単にしたいので、ブランチAで書いたものを取り入れたいと思います。ただし、ブランチBを「汚染」したくはありません。ブランチAからステージングされていない変更に変更を追加するだけです。 私が試したこと(branchBに立っているとき): git merge --no-commit branchA マージ内に入るため、機能しません。そうでなければ、それは完璧でしょう。 git checkout branchA -- . 変更master..branchAではなくbranchA..branchB間の変更を適用するため、機能しません。 他に何か? 編集:はい、ブランチAの変更はコミットされます。この例では、ビルドが改善されたブランチは1つだけですが、機能ブランチでの作業中に適用したいビルドが改善されたブランチが最大N個ある場合があります。
89 git  merge  branch 

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