gitのよくある問題の解決法
1. 現在修正されているファイルを古いコミットにコミットしてしまう問題はどうすれば解決できますか?
#git reset --soft HEAD^ (最後のコミントにリセット)
#git reset HEAD reseted_file_name。
#git commit --amend (現在のコミットをコミットする)
#git commit -a (新しいコミットを作成する)
#git review
2.
複数のコミットを送信しようとしています。という場合は想定内です。
に依存しているコミットを投稿しています。そうでない場合は、変更を1つにまとめることを検討する必要があります。
コミットしてから投稿してください。
未解決のコミットは
f8a639c (HEAD, Bug1415001) ライブマイグレーションでリソースを正しくロールバックできないのを修正。
7536bf3 "ratelimit_v3"の互換性チェックを削除しました。
本当に上記のコミットを送信しますか?
確認する場合は「yes」、キャンセルする場合は「other」と入力してください。中止する。
解決策
#git checkout master
#git pull origin master
#git checkout BRAND
#git rebase master
#git review
3.
リモート デルタを解決する。100% (10/10)
リモート 変更点の処理:refs: 1, 完了
リモートで ERROR: コミットメッセージフッターに Change-Id がありません。
リモートの コミットメッセージに関する提案。
リモート ライブマイグレーションでリソースを正しくロールバックできない問題を修正
リモートの
を使用しています。live_migration で例外が発生した場合。
リモート: _rollback_live_migration() が呼び出され、変数
リモート: "migrate_date" をインポートする必要があり、これは特定のパラメータとして使用します。
リモート:そうでなければ、インスタンスパスが削除されず、次の
remote: live-migration が失敗する。
をリモートで実行します。
リモートで Closes-Bug: #1415001
をリモートで表示します。
リモートで Change-Id: Icd34ce4f1b509dd6d228ea2f620d34ac5e529951
をリモートで表示します。
をリモートで実行します。ヒント: Change-Id を自動的に挿入するには、フックをインストールします。
リモート: gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [email protected]:hooks/commit-msg ${gitdir}/hooks/
をリモートで実行します。
リモートを使用します。
ssh://[email protected]:29418/openstack/nova.git へ
! [リモート拒否] HEAD -> refs/publish/master/Bug1415001 (コミットメッセージフッターの Change-Id の欠落)
error: 'ssh://[email protected]:29418/openstack/nova.git' へのいくつかの refs のプッシュに失敗しました。
解決策
#gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [email protected]:hooks/commit-msg ${gitdir}/hooks/
#git review
4. git 接続が拒否されました。
ssh -T [email protected]
[root@control-compute00 nova]# ssh-add
認証エージェントへの接続を開くことができませんでした。
[root@control-compute00 nova]# ssh-agent bash
[root@control-compute00 nova]# ssh-add -l
エージェントにはIDがありません。
[root@control-compute00 nova]# ssh-add ~/.ssh/id_rsa
IDが追加されました。/root/.ssh/id_rsa (/root/.ssh/id_rsa)
5.
Gitを使う上で、時には失敗することもあります。
例:checkout -f、reset -hard、branch -dを実行してブランチを削除する。
その結果、ローカル(リモート)ブランチまたは一部のコミットが失われます。
失われたブランチやコミットの情報が git gc によって消去されていなければ、再ログインすることで回復できます。
一般に、gcは役に立たないオブジェクトをパージする前に長い間保持します。
reflog は git が提供する内部ツールで、git リポジトリ上で行われた様々な操作を記録します。
git reflog show あるいは git log -g コマンドを使用すると、すべての操作のログを見ることができます。
復旧作業は簡単です。
1. git log -g コマンドを使用して、復元する必要があるメッセージの commit_id を探します。これは、コミットの日時から特定することができます。
2. 2. git branch recover_branch commit_id で新しいブランチを作成します。
このようにして、足りないものをrecover_branchブランチに回収しました
関連
-
[解決済み] [email protected] へのいくつかの参考文献のプッシュに失敗しました。
-
[解決済み】Git Push Error: リポジトリデータベースにオブジェクトを追加する権限が不足しています。
-
[解決済み] git ls-remote と git ls-remote origin の違い。
-
[解決済み] Git 1.8.4.2 を使った Homebrew のインストール (Mac OS X 10.7.5)
-
[解決済み] 警告 IP アドレスの RSA ホスト鍵が永久に追加されました。
-
[解決済み] なぜgit branch --unset-upstream to fixupを呼び出すのですか?
-
[解決済み] GIT:「私たちによって削除された」コンフリクトはどれほど危険か?
-
[解決済み] herokuコードのデプロイ時にパーミッションが拒否される(publickey) fatal: リモートエンドが予期せずハングアップする
-
Git Please tell me who you are
-
git は "正しいアクセス権があり、リポジトリが存在することを確認してください。" という問題に遭遇しました。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Git サブモジュール head 'reference is not a tree' エラー
-
[解決済み] Git エラー : 'upstream' は git リポジトリでないようです。
-
[解決済み] GitHubです。パーミッションが拒否されました (公開鍵)。
-
[解決済み] ターミナル/コマンドラインからgitにプッシュする方法
-
[解決済み] git hooks : clone フックってあるんですか?
-
[解決済み] 多くのリポジトリがある場合、SourceTreeは非常に遅くなります。
-
[解決済み] git push" でリモートファイルを強制的に上書きする
-
git 操作エラー。次の未追跡の作業ツリーファイルは、...によって上書きされます。
-
fatal: マージが完了していません (MERGE_HEAD が存在します)。を実行する前に変更をコミットしてください。
-
[git]ssh: ホスト名 github.com を解決できませんでした: nodename も servname も提供されていないか、知られていません。