質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Q&A

解決済

1回答

9298閲覧

gitlabにpushできない

pokemonta

総合スコア170

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

0グッド

1クリップ

投稿2020/08/09 05:57

編集2020/08/09 07:37

空のリポジトリを作成後、Cloneを行いました。
その後、ローカルでreadmeファイルを作りpushしましたが
git labのコンソールに変化はありませんでした。
readmeの変更内容が表示されることを期待しています。

具体的には以下の手順を行いました。

git clone リポジトリ.git cd /c/Users touch README.md $ git add README.md $ git commit -m "add README" $ git push Enumerating objects: 3, done. Counting objects: 100% (3/3), done. Writing objects: 100% (3/3), 238 bytes | 119.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) remote: GitLab: remote: A default branch (e.g. master) does not yet exist for xxx remote: Ask a project Owner or Maintainer to create a default branch: remote: remote: https://・・・・ remote: To リポジトリ.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'リポジトリ.git' エラーがでましたので以下のコマンドを実行 git remote rename origin old-origin git remote add origin リポジトリ.git エラーが表示されずに終了しましたが git hubのコンソール(Activity - push events)には何も表示されていません、

git pushと
git remote rename origin old-origin
git remote add origin リポジトリ.git
の使い分けもよくわかりません。
どっちのやり方が正解かよくわかりません。毎回renameするのにも
違和感があります

【追記】調査コマンド実行
$ git status
On branch master
Your branch is based on 'old-origin/master', but the upstream is gone.
(use "git branch --unset-upstream" to fixup)

nothing to commit, working tree clean

$ git branch -a -vv

  • master efe1daf [old-origin/master: gone] add README

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

追記

console

1$ git push origin master 2Enumerating objects: 3, done. 3Counting objects: 100% (3/3), done. 4Writing objects: 100% (3/3), 238 bytes | 238.00 KiB/s, done. 5Total 3 (delta 0), reused 0 (delta 0) 6remote: GitLab: 7remote: A default branch (e.g. master) does not yet exist for xxx 8remote: Ask a project Owner or Maintainer to create a default branch: 9remote: 10remote: https://xxxx 11remote: 12To リポジトリ.git 13! [remote rejected] master -> master (pre-receive hook declined) 14error: failed to push some refs to 'リポジトリ.git'

そのリポジトリーは GitHub ではありません、GitLab です

console

1! [remote rejected] master -> master (pre-receive hook declined)

GitLab サーバー側で拒絶されています
GitLab 管理者に問い合わせてみてください
ユーザー権限などにも問題がないか再確認してみてください

参考: Answer: Git error when trying to push — pre-receive hook declined

元の回答

1
現在のディレクトリーが
GitHub から clone した Gitリポジトリーのワーキングツリーであることを確認します:

console

1pwd

console

1ls -al

この時点で GitHub から clone した Gitリポジトリーのワーキングツリーでなければ
clone した Gitリポジトリーのワーキングツリーに cd コマンドで移動します

2
現在のブランチ (master) とリモート origin のブランチ master を関連付けます:

git branch --set-upstream-to=origin/master

3
push します:

console

1git push origin master

Git 可視化 GUI

今なにをしているかわからなくならないよう、
まずは GUI を利用して Git の状態を確認する方法を確保しておき、
Git 挙動に慣れることをお奨めします

Mac:
Sourcetree | Free Git GUI for Mac and Windows

Windows:
TortoiseGit – Windows Shell Interface to Git

Visual Studio Code
Git Graph - Visual Studio Marketplace

投稿2020/08/09 06:33

編集2020/08/09 07:09
y_shinoda

総合スコア3272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pokemonta

2020/08/09 06:36

失敗しました。 $ git branch --set-upstream-to origin master error: the requested upstream branch 'origin' does not exist hint: hint: If you are planning on basing your work on an upstream hint: branch that already exists at the remote, you may need to hint: run "git fetch" to retrieve it. hint: hint: If you are planning to push out a new local branch that hint: will track its remote counterpart, you may want to use
y_shinoda

2020/08/09 06:38

次のコマンドを実行するとどのように表示されますか? git remote -v
pokemonta

2020/08/09 06:40

$ git remote -v old-origin リポジトリ.git (fetch) old-origin リポジトリ.git (push) origin リポジトリ.git (fetch) origin リポジトリ.git (push) なんですか。色々出ました、
pokemonta

2020/08/09 06:42

上のコマンドでも書いていますとおり、一旦リネームしてから git remote addしています。 (そうしないとoriginは存在していますみたいなエラーがでます)
y_shinoda

2020/08/09 06:47

コマンドが誤っていました、失礼しました 次のコマンドではいかがでしょうか? git branch --set-upstream-to=origin/master
pokemonta

2020/08/09 06:50

だめっした。 $ git branch --set-upstream-to=origin/master error: the requested upstream branch 'origin/master' does not exist hint: hint: If you are planning on basing your work on an upstream hint: branch that already exists at the remote, you may need to hint: run "git fetch" to retrieve it. hint: hint: If you are planning to push out a new local branch that hint: will track its remote counterpart, you may want to use hint: "git push -u" to set the upstream config as you push.
y_shinoda

2020/08/09 06:53 編集

おそらく、ローカルリポジトリーにリモート origin は登録されていますが、 origin のブランチ情報がリモートにありません 次のコマンドを実行後、再度試すといかがでしょうか? git fetch origin
pokemonta

2020/08/09 06:55

だめでした。 $ git fetch origin $ git branch --set-upstream-to=origin/master error: the requested upstream branch 'origin/master' does not exist hint: hint: If you are planning on basing your work on an upstream hint: branch that already exists at the remote, you may need to hint: run "git fetch" to retrieve it. hint: hint: If you are planning to push out a new local branch that hint: will track its remote counterpart, you may want to use hint: "git push -u" to set the upstream config as you push.
y_shinoda

2020/08/09 06:59

であればリモートはブランチがないと思われます 1 次のコマンドでコミットしたときのメッセージ "add README" が表示されることを確認します git log 2 次のコマンドで push します git push origin master
pokemonta

2020/08/09 07:03

pushは失敗します $ git log commit efe1dafaccef・・・・ (HEAD -> master) Author: トムブラウン Date: Sun Aug 9 14:30:40 2020 +0900 add README $ git push origin master Enumerating objects: 3, done. Counting objects: 100% (3/3), done. Writing objects: 100% (3/3), 238 bytes | 238.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) remote: GitLab: remote: A default branch (e.g. master) does not yet exist for xxx remote: Ask a project Owner or Maintainer to create a default branch: remote: remote: https://xxxx remote: To リポジトリ.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'リポジトリ.git'
y_shinoda

2020/08/09 07:09

回答に追記しました
pokemonta

2020/08/09 07:16

ありがとうございました。 git remoteではなく、git pushを使うんですね。 リモートブランチもローカルブランチも作った記憶がありませんけど 勝手にできるって感じですね。。。そのうえで毎回紐づけるって感じですかね。。
y_shinoda

2020/08/09 07:20

通常はローカルブランチとリモートブランチの関連付けをする必要はありません - master というブランチはリポジトリーを新規作成したときに自動的に作成されます - また、ローカルのブランチはリモートブランチをクローンすれば、自動的にリモートから作成され、関連付けも自動的に行われます git remote rename や git remote add は 通常の Git のワークフローで作業を行っている間はまず使うことはありません
pokemonta

2020/08/09 07:29

成程成程。そうゆうことですね。 ふつうは、ローカル修正してコミット→pushで素直に行けるということですね 勉強になりました。
pokemonta

2020/08/09 07:31

てか、僕のイメージではGitのコンソール上に masterやbranchなんかが選択できて、そのURLに対して cloneやPushできるみたいなことを想像していました。現在は そんなメニュはなく、無機質なページです。ですのでどんなブランチが リモートにあるのか?また、それがローカルとどう紐づいているのか 分からない状況でした。
pokemonta

2020/08/09 07:36

ブランチの中にmasterが含まれているという概念なんですね。。
y_shinoda

2020/08/09 07:39

コマンドラインで操作すると基本的にはこのような操作を繰り返していくことになります 表示されるメッセージと git status や git log などのコマンドを使い 常に現在の状態を確認していくことが必要です 「コマンドラインを使いなさい」という人もいますが、 プロでも操作間違いを起こす人も多く 個人的には GUI を使うことをみなさんにすすめています Linux 知識の要らない Git 講座 目次 | ultra code https://futureys.tokyo/table-of-contents-git-lesson-without-linux-knowledge/
pokemonta

2020/08/09 07:42

ありがとうございます。資料読ませてもらいます。
pokemonta

2020/08/09 08:03

$ git remote addは、リモートリポジトリの追加コマンドでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問