[解決済み] Gitのプッシュが何もしない(すべて最新)
質問
GitHub にある Git リポジトリを更新しようとしています。たくさんの変更を行い、それらを追加してコミットし、そしてその後に
git push
. 応答は、すべてが最新であることを教えてくれますが、明らかにそうではありません。
git remote show origin
は期待するリポジトリで応答します。
リポジトリに表示されていないローカルコミットがあるのに、なぜ Git はリポジトリが最新であると言うのですか?
[searchgraph] git status
# On branch develop
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# Capfile
# config/deploy.rb
nothing added to commit but untracked files present (use "git add" to track)
[searchgraph] git add .
[searchgraph] git status
# On branch develop
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: Capfile
# new file: config/deploy.rb
#
[searchgraph] git commit -m "Added Capistrano deployment"
[develop 12e8af7] Added Capistrano deployment
2 files changed, 26 insertions(+), 0 deletions(-)
create mode 100644 Capfile
create mode 100644 config/deploy.rb
[searchgraph] git push
Everything up-to-date
[searchgraph] git status
# On branch develop
nothing to commit (working directory clean)
どのように解決するのですか?
git push
は、すべてのローカルブランチをプッシュするわけではありません。どのリモートブランチにプッシュすればいいのか、どうやって知ることができるでしょうか? 特定のリモートブランチにプッシュするよう設定されたローカルブランチのみをプッシュします。
私のバージョンの Git (1.6.5.3) で
git remote show origin
を実行すると、どのブランチがプッシュされるように設定されているかが実際に表示されます。
Local refs configured for 'git push':
master pushes to master (up to date)
quux pushes to quux (fast forwardable)
Q. しかし、私はに押すことができます。
master
を気にせず押せますね。
あなたが
git clone
を設定すると、デフォルトではローカルの
master
ブランチを設定し、リモートの
master
ブランチ (ローカルでは
origin/master
) にコミットする場合、もし
master
にしかコミットしないのであれば、単純な
git push
は常に変更をプッシュバックします。
しかし、あなたが投稿した出力スニペットでは、あなたがいるブランチは
develop
というブランチにおり、これは何かにプッシュするように設定されていないのでしょう。 そこで
git push
を引数なしで実行しても、そのブランチのコミットはプッシュされません。
"Everything up-to-date" とあるのは、"あなたがプッシュする方法を教えてくれたブランチはすべて最新です" という意味です。
Q. では、どのようにすれば自分のコミットをプッシュできるのでしょうか?
もし、あなたがしたいことは、あなたの変更を
develop
から
origin/master
にマージした後、ローカルの
master
にマージして、それをプッシュしてください。
git checkout master
git merge develop
git push # will push 'master'
もし、あなたが欲しいものが
develop
とは別に、リモートに
master
とは別に、引数を
git push
:
git push origin develop
という名前の新しいブランチをリモートに作成します。
develop
;
と
そのブランチをローカルの
develop
ブランチに更新します。
と
セット
develop
にプッシュします。
origin/develop
というように、将来的には
git push
を引数なしで
となります。
プッシュ
develop
を自動的にプッシュします。
をプッシュしたい場合は、ローカルの
develop
というリモートブランチにプッシュしたい場合
以外の
develop
と、言うことができます。
git push origin develop:something-else
しかし、そのフォーム
にはなりません。
を設定します。
develop
に常にプッシュするように
origin/something-else
にプッシュします。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] ローカルにあるファイルを無視するようにgitを設定するにはどうすればよいですか?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルの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 実装 サイバーパンク風ボタン
おすすめ
-
gitlab をアップロード ! [リモート拒否] dev -> dev (受信前のフックが拒否されました)
-
解決策正しいアクセス権を持っていることと、リポジトリが存在することを確認してください。
-
giteaを使ったGitサービスの構築
-
[解決済み] Gitのmasterブランチを、別のブランチから完全に置き換えるには?[重複]。
-
git のコンパイルとインストールの問題を解決する fatal: https のリモートヘルパーが見つからない
-
[解決済み] git push に失敗しました。RPC に失敗しました; result=22, HTTP code = 411
-
[解決済み] シングルブランチクローンを「元に戻す」方法は?
-
[解決済み] stash@{1}は曖昧?
-
[解決済み] VSCodeからgitの統合を削除する
-
[解決済み] 別のユーザーでコードをコミットするにはどうすればよいですか?