ですから、私はGitと開発全般に不慣れなブランドスパンキングです。私はいくつかの異なるマシンでLinuxとMacを使用しており、AWSでいくつかのクラウドサーバーを使用しています。それらすべてで小さな小さなPythonプロジェクトに取り組んでいます。
私は最初に何が欲しいかを説明しようとします。うまくいけば、私のユースケースで機能する最良のソリューションが近くにあることを願っています。自分が所有するデバイス、自宅のUbuntuデスクトップ、職場のMacbook、クラウドサーバー、職場のUbuntuデスクトップ、個人のMacbookでコードを記述できるようにしたいと考えています。明らかに、私はさまざまなホスト名とユーザー名で作業しています。私のコードで機能するのは私だけです。
私はgitガイドを調べましたが、それは機能しています。コードを変更するクラウドサーバーにリポジトリをセットアップしようとしました。Macbookからコミットしてプッシュしようとしましたが、1日中一連のアクセス許可エラーが発生しました。リポジトリに戻って、sshホイールユーザーとして-Rをchownする必要がありました。これは、すべてのオブジェクトが取得されているためです。ルートとして上書きされます。
MacBookからプッシュしようとしたときに表示されるエラーメッセージの例を次に示します。
コミット:
macbook:dev macbookuser$ git commit
# On branch master
# Your branch is ahead of 'origin/master' by 6 commits.
#
nothing to commit, working directory clean
そしてプッシュ:
macbook:dev macbookuser$ git push
user1@myserver-aka-repo.com's password:
Counting objects: 18, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (14/14), 1.62 KiB, done.
Total 14 (delta 7), reused 0 (delta 0)
error: insufficient permission for adding an object to repository database ./objects
fatal: failed to write object
error: unpack failed: unpack-objects abnormal exit
To user1@myserver-aka-repo.com:/home/myserver-aka-repo/dev/.git
! [remote rejected] master -> master (n/a (unpacker error))
error: failed to push some refs to 'user1@myserver-aka-repo.com:/home/myserver-aka-repo/dev/.git'