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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Git

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

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Q&A

解決済

3回答

1966閲覧

ssh接続でgit push origin masterができない

selecao3

総合スコア10

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Git

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

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

0グッド

1クリップ

投稿2019/04/03 09:00

編集2019/04/03 09:56

前提・内容

お世話になります。

開発マシン(macOS)からサーバー(windows10)へgit pushができる環境を作成したところ、git pushした際に以下のようなエラーが発生しました。

bash

1fatal: ''/d/develop/sample-git'' does not appear to be a git repository 2fatal: Could not read from remote repository. 3 4Please make sure you have the correct access rights 5and the repository exists.

上のエラーが出る前に具体的には開発マシンとサーバーで、以下のコマンドを実行しております。

開発マシン

bash

1cd ~/develop/rust/sample 2git init 3git add . 4git commit -m "sample" 5git remote add origin ssh://{サーバーのユーザー名}@{サーバーのIPアドレス}/d/develop/sample-git 6git push origin master

サーバー

GitBush

1cd /d/develop/sample-git 2git init

やりたいこととしましては表題の通り、
"git push origin master" の際に上記のエラーが発生することなく、pushできるようにしたいです。

もし不足している情報等がございましたらお手数をお掛けしますがお伝えしてくださると幸いです。
よろしくお願いいたします。

追記

  • sshコマンドは出来ている
  • scpコマンドも出来ている
  • git push origin master の際にサーバー側のパスワードが聞かれる(パスワードを入力すると上記のエラー)

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

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

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

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

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

guest

回答3

0

自己解決

自己解決しました。
C:\Program Files\Git\usr\bin配下にあるsshdを起動せず、Windows10由来のOpenSSH server(参考URL: https://www.websec-room.com/2018/05/12/2933)のsshdを起動させていたことが原因のようです。
Windows10由来のOpenSSH serverをアンインストールし、Git由来のsshdを起動させたうえで、開発マシン側で
git clone ssh://{サーバーのユーザー名}@{サーバーのIPアドレス}:/d/develop/sample-git
としたところエラーなく複製ができました。
コメントをくださった皆様、ありがとうございました!

投稿2019/04/04 14:19

編集2019/04/05 00:40
selecao3

総合スコア10

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

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

0

まず、どっかのフォルダにそのリポジトリをCloneします
で、そのフォルダに、修正後のファイルをコピーします
コピーしたファイルをすべてaddします
んで、そのフォルダをチェックアウトして、
そんでpushしてみてはどうでしょうか

投稿2019/04/03 13:13

y_waiwai

総合スコア87749

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

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

selecao3

2019/04/04 01:16 編集

コメントありがとうございます。 >どっかのフォルダにそのリポジトリをCloneします 開発マシンのフォルダにサーバーのリモートレポジトリをcloneするという意味でしょうか? 開発マシン上で # git clone ssh://{サーバーのユーザー名}@{サーバーのIPアドレス}/d/repo01/sample01.git としましたが、上記のエラーが表示されて、cloneに失敗しました。 念のため、サーバー上で以下の作業を行いました。(#付きの文字列はコマンド、#が付いていない文字列はコマンド実行後に表示されたメッセージです。) # mkdir /d/repo_clone # git clone /d/repo01/sample01.git Cloning into 'sample01'... done. # cd sample01/ # touch new_file.txt # git checkout /d/repo_clone/sample01/ # git push Everything up-to-date なお、作業の際に気づいたことなのですが、git cloneする際、 # git clone /d/repo01/sample.git だと、問題なく複製されますが、 # git clone ssh://localhost/d/repo01/sample.git とすると上記のエラー文が表示されます。 以上、よろしくお願いします。
y_waiwai

2019/04/04 10:21

google翻訳 fatal: '' / d / Develop / sample-git ''はgitリポジトリではないようですfatal:リモートリポジトリから読み込めませんでした。 ということなんで、そのリポジトリを作り直してみては。 #Cloneさえできないってのはなんぼなんでも普通じゃないですね
selecao3

2019/04/04 14:23

自己解決しました。 上の自己解決にも記載しましたが、Git由来のsshdを起動させずに、Windows10由来のOpenSSH serverのsshdを起動させてgitコマンドを使っていたことが原因のようです。 本件について、ご協力ありがとうございました!
guest

0

サーバー側の リモートリポジトリの作成が

cd /d/develop/sample-git git init --bare --shared

じゃないとダメという話でしょうとか...

投稿2019/04/03 09:41

CHERRY

総合スコア25171

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

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

selecao3

2019/04/03 09:50

早速のコメントありがとうございます。 サーバー側と開発マシン側で以下のコマンドを実行しましたが、エラー文は変わりませんでした・・・ サーバー側 # cd /d/develop/sample-git # git init --bare --shared 開発マシン側 # git push origin master なお、"git push origin master"を実行した際、サーバー側のパスワードは聞かれています。
CHERRY

2019/04/03 10:08

うーん。 {サーバーのユーザー名} に /d/develop/sample-git のアクセス権はありますか? git init と git init --bare --shared では、作成されるファイルの位置が異なるのですが、別のディレクトリか現在のディレクトリを一度削除して、やってみても同じですか?
selecao3

2019/04/03 10:43

サーバー側(Windows10)でエクスプローラーからsample-gitのプロパティを確認したところ、 ・Authenticated Users ・SYSTEM ・Administrators ・Users の4つのユーザー名があり、それぞれ下の「アクセス許可(P)」を見たところ少々違う部分はありましたが、少なくとも全て「読み取りと実行」は出来る状態でした。 念のため、その4つのユーザー全てフルコントロール権限を付与しましたが結果は変わりませんでした・・・ >別のディレクトリか現在のディレクトリを一度削除 以下のコマンドを行いましたが、こちらも結果は変わりませんでした。 まず、サーバー側(Git Bashで行いました) # mkdir /d/repo # mkdir /d/repo/sample.git # cd /d/repo/sample.git # git init --bare --shared 次に開発マシン側 # git remote rm origin # git remote add origin ssh://{サーバーのユーザー名}@{サーバーのIPアドレス}/d/repo/sample.git # git push origin master お手数をお掛けしておりますが、よろしくお願いします。
selecao3

2019/04/04 14:24

自己解決しました。 上の自己解決にも記載しましたが、Git由来のsshdを起動させずに、Windows10由来のOpenSSH serverのsshdを起動させてgitコマンドを使っていたことが原因のようです。 本件について、ご協力ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問