- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我喜欢使用“桌面版 google 云端硬盘”,我喜欢将所有内容都放在云端,因为集中所有内容可以使事情井井有条。
但是,git 目录在这样的同步驱动器中是危险的吗?
危险的定义:
最佳答案
I love to put everything in the cloud since centralize everything makes things organized.
就个人而言,我通常避免使用文件夹同步服务或 cloud hosted文件夹(如 OneDrive、Google Drive、DropBox 等),因为它们都努力为用户提供简单易用的体验,鉴于 CAP theorem 这是不可能做到的当然适用于文件夹同步服务:所以这些服务普遍拒绝让他们的用户拥有详细的冲突解决工具 - 以及他们无法跟踪文件拆分甚至克隆文件等更改(看着你,OneDrive...) 只会让人头疼。
Is it dangerous to put git directory in drive sync tool
是
但这也没有实际意义,因为 git
已经是一个工具(和整个生态系统)来保持 repos 同步:只需排除你的 repos来自 Google Drive,并使用 GitHub、BitBucket 或您自己在 NAS 上的自托管 git 服务器托管您的存储库。
至于为什么它是危险的:
git
的工具假定它对您的存储库的 .git
目录和其他软件具有独占访问权限>不会在 git
处理文件时偷看。
git
确实使用操作系统提供的文件锁和其他 IPC 方法来确保对其文件的独占访问,但第三方文件夹同步软件不会遵守git 自己的 IPC 锁。.git
目录可能处于有效状态时,同步服务保存的 .git
目录的副本可能是处于损坏状态(所以不要恢复它!)因为(据我所知)没有第三方文件夹同步服务尝试制作 .git
目录的事务正确快照副本。 inconsistency of
.git
with "all tracking files". (sync tool may change.git
with its tracking file at different times, which may result in disaster when you commit something or push something.
有点。正如我所说,风险在于,当同步工具正在制作您的本地存储库的副本时,同步服务的您文件夹的远程副本可能包含您的 .git 的不一致副本
目录,在您随后从 Google Drive 或 DropBox 下载您的文件夹之前,问题不会很明显。
all other possible side effects of letting the sync tool change the
.git
不胜枚举。只是不要让它发生。
This popular QA功能人们声称他们的 Git 存储库与 DropBox 一起使用,但是高度赞扬的评论警告说他们的方法不会扩展到单个用户之外(而且你不应该无论如何共享一个 git 存储库)。 p>
关于git - 将git目录放在驱动器同步工具中是否危险,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69056041/
编辑:澄清一下,我明白为什么这段代码不起作用,我并不是要修复它,而是想了解如果这段代码可以在没有语义错误的情况下编译会有什么危险。 我发现下面的代码会导致静态语义错误。我知道这是因为 std::lis
我想知道 C# 枚举以及重复值会发生什么。我创建了以下小程序来测试: namespace ConsoleTest { enum TestEnum { FirstElem
正如我在另一个 SO 问题中指出的那样,我遇到了 this article .当我通过 MSVC7.1 编译 boost 1.40 时出现了这个问题,并且弹出了几个 C4251 警告。 现在,在阅读上
我有以下弹出窗口代码(客户端请求)。它使用 eval ,我知道这是危险的。有没有办法重写下面的脚本,使其不使用 (eval)? /* exported popup_default , popup_he
NTFS 文件可以有对象 ID。可以使用 FSCTL_SET_OBJECT_ID 设置这些 ID .然而,msdn article说: Modifying an object identifier c
我一直在学习命令行参数解析。关于这个已经有很长的线索了,我不想在这里挑起一个: Using getopts in bash shell script to get long and short com
这个问题在这里已经有了答案: How to configure ContextMenu buttons for delete and disabled in SwiftUI? (4 个回答) 4 个月
为什么在 linux 的中断处理程序中禁止 printk 或 (I/O)。?在什么情况下中断处理程序中的 I/O 会导致 linux 系统中的死锁? 最佳答案 关于 printk(),它是侵入性的。例
不是 Invoking virtual function and pure-virtual function from a constructor 的重复项: 以前的问题与 C++ 03 相关,而不是
我正在使用 lateinit 属性以避免使用 ?运算符(operator)。我有很多 View 属性是第一次在 getViews() 函数中分配的。如果该功能不存在,我的应用程序将与来自 Kotlin
我最近在使用 fputs 时遇到了问题:当使用 fputs 在文本文件中打印一些字符串时,我碰巧得到了除 A-Z、a-z、0-9 之外的其他字符(不属于字符串的字符) .我绝对确保所有字符串都以空字符
在仅包含字节数组的结构上使用 #pragma pack(1) 是否危险/有风险?例如。这个: #pragma pack(1) struct RpcMessage { uint8_t proto
我是一名优秀的程序员,十分优秀!