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

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

ただいまの
回答率

88.22%

gitの初期ファイルを作成する(git init)ところから、git pushするまでをしたいです。

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,989

tomohito.n

score 14

pythonでLINEbotを作ろうとしています。

https://miyabi-lab.space/blog/21を参考にして
// gitの初期ファイルを作成
git init
// ローカルリポジトリに結びつくリモートリポジトリを設定
heroku git:remote -a (アプリ名)
// 変更したファイルをインデックスに登録
git add .
// 変更したファイルをリポジトリに書き込む("inital commit"はコメントなのでなんでも良い)
git commit -m "inital commi
// herokuにローカルで作成したファイルをpush
git push heroku master
この作業をTerminalで試しましたが以下のようになってうまくいきませんでした。

git pull heloku master
も試してみましたがうまくいきませんでした。

以下がターミナルの入力内容です。※アプリ名は実際にgitで作ったものを入力してあります。
MecBook-Pro:line-bot-test (ユーザー名)$ git init
Reinitialized existing Git repository in /Users/(ユーザー名)/line-bot-test/.git/
MecBook-Pro:line-bot-test (ユーザー名)$ heroku git:remote -a (アプリ名)
set git remote heroku to https://git.heroku.com/(アプリ名).git
MecBook-Pro:line-bot-test (ユーザー名)$ git add .
MecBook-Pro:line-bot-test (ユーザー名)$ git commit -m "inital commit"
On branch master

Initial commit

nothing to commit
MecBook-Pro:line-bot-test (ユーザー名)$ git push heroku master
error: src refspec master does not match any
error: failed to push some refs to 'https://git.heroku.com/(ユーザー名).git'
MecBook-Pro:line-bot-test (ユーザー名)$ 

なにぶん初心者なので『何言ってんだこいつ感』はあるでしょうが何卒よろしくお願いいたします。

追記;二点気になるところがありまして

MecBook-Pro:line-bot-test nishigakitoshihito$ git commit -m "inital commit"
On branch master
Initial commit
nothing to commit

のnothing to commitと出る点と git add .と入力しても何も出ない点が気になります。
ここに解決策がありそうな気がするのですが、この点に関して調べても何も出てきません。
もしこの辺りで何かご存じ中かたあれば教えていただけませんでしょうか?

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+1

その作ったというリポジトリをcloneしてみましょう。

それができたら、そのcloneした作業ディレクトリにファイル追加や修正をして、add、そしてcommit、pushしてみましょう

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/10/22 10:40

    ご回答ありがとう御座います。
    クローンしてみました

    Cloning into '(アプリ名)'...
    warning: You appear to have cloned an empty repository.
    と、なりまして空のリポジトリを作ったよ
    となりました。ファイルをドラッグandドロップで追加してgit add . してみたのですがうまくいかなかったです。
    ファイルの移動もコマンドでということでしょうか?

    あと、addした際にコミットがチェックアウトされていません
    と出たので調べてみたのですが同じ症例を調べることができず解決策がわかりませんでした。

    ターミナルの結果ですがこんな感じになりました。
    MecBook-Pro:line-bot-test (ユーザー名)$ heroku git:clone --app (アプリ名)
    Cloning into '(アプリ名)'...
    warning: You appear to have cloned an empty repository.
    MecBook-Pro:line-bot-test (ユーザー名)$ git add .
    error: '(アプリ名)/' does not have a commit checked out
    fatal: adding files failed
    MecBook-Pro:line-bot-test (ユーザー名)$ git status
    On branch master

    No commits yet

    Untracked files:
    (use "git add <file>..." to include in what will be committed)
    (アプリ名)/

    nothing added to commit but untracked files present (use "git add" to track)
    MecBook-Pro:line-bot-test (ユーザー名)$

    大変恐縮ですが教えていただけますと幸いです。

    キャンセル

  • 2019/10/22 11:40

    cloneはうまく行ってるようですね

    それでは、そのcloneしたディレクトリに対して、なにかファイルをコピーしてください、

    https://techacademy.jp/magazine/6235
    ファイルの作成/変更/削除をgitのインデックスに追加する(git add)

    で書かれてるように、コピーしたファイルを
    git add [ファイル名]
    して、
    commt して、update します

    キャンセル

  • 2019/10/25 12:55

    まず、結果から行くとrequirements.txtとruntime.txtというファイルが足りていなくてずっとgit pushできていませんでした。

    これからherokuを利用を考えている方はまず
    https://devcenter.heroku.com/

    このページに飛んでください。
    もし英語が苦手という方は翻訳しながらやってみてください。(中学レベルの英語でできます。)
    翻訳はgoogle chromeでページ丸ごと翻訳できるのでそれをお使いください。

    一通りチュートリアルをこなして頂いたら
    https://dashboard.heroku.com/appsを開いてください。
    ここで先ほど作ったアプリをクリックしてください。
    アプリの状況が出ます。

    ここで先ほどと同じく翻訳をしてもらって右側にアプリがどこまで進んだかが見えます。
    つまり、新たに作りたいアプリが『デプロイ済み』というとこまで行けていればOKです。

    ここからが、作り方で用意するのは
    1、PC側でherokuと同期するためのフォルダ(名前はなんでも良いです)
    2、作ったもの
    3、requirements.txtとruntime.txt(チュートリアルで作ったものをそのままコピーでOKです。)
    以上です。

    まず
    cd (1のフォルダ名)
    でそのフォルダに移動(cdが分からない場合はhttps://www.garunimo.com/program/linux/cd.phpここをみてください。)

    次に
    git init
    これでここに作ります。という目印みたいなものを作ります。

    (ログインできていない場合はここまでにログインしておいてください。heroku loginと入力してエンターキーを押すとログインできます。)

    目印を立てたら
    heroku git:remote -a (アプリ名)
    と入力してアプリとファイルを紐付けします。
    アプリ名が分からない場合は
    heroku apps
    と入力すれば出てきます。ぶっちゃけコピペの方が安全です。

    紐付け終わった方は
    1、PC側でherokuと同期するためのフォルダ
    に3、requirements.txtとruntime.txtと作ったファイルを入れます。
    ドラッグ&ドロップでもコピー&ペーストでも大丈夫です。

    入れましたら
    git add .
    と入力してください。フォルダに入れました!という意思表示みたいなものです。
    何も出なくて不安になりますが大丈夫です。それが普通です。

    意思表示して頂いたら
    git commit -m "inital commit"
    を入力してください。入力するとこの状態で上げても大丈夫ですと意思表示をしているような感じになります。

    最後に
    git push heroku master
    と入力してください。

    これでhttps://dashboard.heroku.com/appsの作成したアプリのページを選択すると
    『デプロイ済み』のメッセージが出ているはずです。

    以上です。また修正したくなったらするかもしれません。

    bsdfanさん y_waiwaiさん fu7mu4さん ご協力いただきありがとう御座いました。

    キャンセル

  • 2019/11/06 14:55 編集

    加筆します。

    2回目以降は
    1] heroku login (ログイン)
    2] heroku apps (app名確認)
    3] cd (フォルダ名) (herokuに持っていくファイルを決定 ※あくまでフォルダの中身だけ持っていくだけ)
    4] heroku git:remote -a (app名) (紐付けするappの決定)
    herokuにアップロードしたファイルを使いたい時は
    heroku git:clone --app (アプリ名) を入れると持って来れます。
    5] ファイルをフォルダに突っ込む
    6] git add . (持っていくappの決定)
    7] git commit -m "inital commit" (持っていくappをパッケージ化するイメージ)
    8] git push heroku master (herokuに持っていく)

    以上です。

    キャンセル

+1

heroku git:remote -a (アプリ名) で入力したアプリ名が、その上の https://id.heroku.com/login で登録したアプリの名前と違うとかじゃないかな。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/10/20 17:20

    ご回答ありがとう御座います。
    今、herokuに登録したアプリの名前をそのままコピーしたのですがやはりそれが原因ではないようです。

    ただ、二点気になるところがありまして

    MecBook-Pro:line-bot-test nishigakitoshihito$ git commit -m "inital commit"
    On branch master
    Initial commit
    nothing to commit

    のnothing to commitと出る点と git add .と入力しても何も出ない点が気になります。
    ここに解決策がありそうな気がするのですが、この点に関して調べても何も出てきません。
    もしこの辺りで何かご存じ中かたあれば教えていただけませんでしょうか?

    追記:上記の気になる点も質問に追記させていただきます。

    キャンセル

  • 2019/10/20 20:45

    git status などでgitの状況を確認してみてください。その出力結果をここにアップローロしてみた方が回答があつまると思います。

    キャンセル

  • 2019/10/22 14:27

    ご回答ありがとう御座います。
    y_waiwaiさんの回答の続きにgit statusの結果を書かせていただきました。
    On branch master
    No commits yet
    nothing to commit (create/copy files and use "git add" to track)
    とあって新しく作るかコピーするかしてgit addしてね?と出るのですがコピーにPythonのファイルを
    入れましたが
    MecBook-Pro:line-bot-test (ユーザー名)$ git add (ファイル名)
    fatal: pathspec '(ファイル名)' did not match any files
    MecBook-Pro:line-bot-test (ユーザー名)$ git add /desktop/python_toybox/(ファイル名)
    fatal: Invalid path '/desktop': No such file or directory
    MecBook-Pro:line-bot-test (ユーザー名)$ git add cd ~/desktop/python_toybox/(ファイル名)
    fatal: /Users/(ユーザー名)/desktop/python_toybox/(ファイル名): '/Users/(ユーザー名)/desktop/python_toybox/(ファイル名)' is outside repository
    となりました。

    入れ方が間違っているのはわかるのですがどうすればコピーできますでしょうか?


    …と回答をしているうちにy_waiwaiさんからご回答いただきましたので、
    まずそちらを試してからまたご報告いたします。 スイマセン...

    キャンセル

+1

参考ページでは省略されていますが、通常は、git initとgit addの間に、ファイルの作成とか編集の作業が入ります。

のnothing to commitと出る点と git add .と入力しても何も出ない点が気になります。
ここに解決策がありそうな気がするのですが、この点に関して調べても何も出てきません

ファイルの変更がないと、結果としてgit addしても何もされません。
addされていないと、git commitしてもコミットする内容がないので上記のメッセージになっていると予想されます。

commitがなにもされていないと、masterブランチも存在していないのと同じ状態なので
pushしようとしたときにmasterブランチがないというエラーになっています。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

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

  • ただいまの回答率 88.22%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る