web-dev-qa-db-ja.com

OneDrive同期フォルダーのGitリポジトリ

OneDriveの同期フォルダー内にgitリポジトリを作成しようとしていますが、問題が発生しています。

OneDriveを使用して、「クラウド」経由で複数のデバイス間でフォルダーを同期しています。開発マシン(Win 7 64)では、OneDriveフォルダーはC:\ Users\myusername\OneDriveの下にあります。

そのディレクトリに\ gitサブフォルダーを作成し、そのフォルダー内にコード(foo.git)のgitリポジトリを作成しました。

同じマシンで、OneDriveと同期されていない別のフォルダーにそのリポジトリのクローンを作成し、変更をプッシュおよびプルできます。

ただし、OneDriveと同期する他のマシン(Win 8.1 64)でも、リポジトリのクローンを作成しようとすると(C:\ Users\myusername\OneDrive\git\foo.gitの下にあるように見えます)、 「これは有効なgitリポジトリではありません」というエラーが表示されます。

\ gitフォルダーの内容は、同期されるため、2つのマシン間で「同じである必要があります」。私が考えることができる唯一のことは、同期されていない私のgitリポジトリにいくつかの隠しフォルダ/ファイルがあるかもしれないということです。 OneDriveは、隠しファイルやフォルダー(私の知る限り)を含め、すべてを同期することになっています。

リモートgitリポジトリに隠しフォルダーまたはファイルはありますか?

なぜこれが機能しないのかはわかりませんが、OneDriveを使用してgitリモートリポジトリを問題なく保存している他のユーザーを読みました。 1つのマシンがWindows 7でもう1つのマシンがWindows 8.1である場合の問題かもしれません。

解決策を見つけるためにグーグルフーを使い果たしたので、誰かが私が間違っている可能性があることについてアドバイスや洞察を持っていますか?

19
Ryan

OneDriveは、(まだ!)ピリオドで始まるファイルの同期をサポートしていません(gitメタデータが保存される.gitフォルダーなど)。

このため、これらのアイテムがOneDriveを介して同期されていることはありません。

(これはOneDriveクライアントの古いバージョンの場合にのみ当てはまります。現在のバージョンの機能を反映する新しい回答を作成しました8/2015)

13
Peter Nied

OneDrive同期クライアントで、ピリオド文字を含むフォルダーの同期がサポートされるようになりました。これにより、OneDriveフォルダー内にある限り、これらのgitリポジトリの同期を自動的に開始できます。

OneDrive Client の最新バージョンを取得すると、すべての準備が整います。

26
Peter Nied

2017年6月27日、バージョン2016(ビルド17.3.6917.0607)

OneDrive for businessはドットファイル(およびドットディレクトリ)の同期をサポートしますが、コミットフックを追加してファイルを除外しない限り、OneDriveは非常に悪いソリューションです https://support.Microsoft.com/en-us/help/3125202/制限と制限-同期するファイルとフォルダ

また、競合状態での動作を知りません。複数のコミッター(自動化されたものを含む)がいる場合、安全ではない可能性があります。

1
Alan Berezin

「.git」という名前の手動作成フォルダーが機能し、OneDriveサーバーに「.git」が表示されます。

0
dvda

今のところ、office.comから手動で同期し、根気よく競合をマージするとうまくいきました。次のテストは、日中のパフォーマンスを確認することです。 OneDriveは理想的なソリューションではないことは知っていますが、プライバシーを確​​保するために、ワークスペース間でファイルをやり取りするためのGitHubのような機能を簡単に取得できる場合があります。

0
cluelessgumshoe