我在15+上花了几个小时对git进行故障排除而没有任何结果。
在过去的6个月中,我一直使用谷歌驱动器(G:/)作为我的本地git回购。我的github个人访问令牌过期了,在更新之后(不幸的是,通过大量故障排除、重新安装git、rstudio和R),git不再适用于google驱动器。我想我在我的github PAT故障排除的时候把git弄乱了.
我推断我的问题与github、R或Rstudio无关,而是与git有关。虽然我可以使用git init
在C:/上的任何地方初始化新的repos,但我不能在G:/ (我也不能从github或C:/克隆)中的任何地方插入一个空白的回购。我在G:/我的驱动器,git init "G:/My Drive"
和git init G:/My\ Drive
中尝试过git init "G:/My Drive"
。所有这些都返回错误:fatal: bad config line 3 in file G:/My Drive/np/.git/config
(图片)。当我重新运行git init
时,如果我删除. .git/config并运行git init
,我会得到相同的错误。
当我在G:/中使用git init
时,git./ (例如,. .git/config、..git/描述和..git/头)中的所有文件都会被我计算机上其他文件(通常来自csv文件)的随机内容破坏。我还暂停了谷歌同步,以消除谷歌备份作为罪魁祸首。
git config --global -l
返回以下内容:
$ git config --global -l
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=D:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
core.fsmonitor=true
pull.rebase=false
credential.helper=manager-core
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master
我从几个堆叠溢出问题中了解到,您不应该使用google驱动器(或任何云存储)来处理每个文件,而不应该将回购作为一个整体(就像git那样)。但是,我的整个工作流程和文件管理都是通过驱动完成的,而且我的大部分工作都是单独完成的,所以我更愿意将所有的工作集中在驱动器中。
发布于 2022-09-29 01:24:54
共享Google托管的Git项目
步骤1:与Google的项目协作者一起创建Git存储库文件夹。
然后,每个协作者都应该:步骤2:下载并安装桌面Google Drive,并确保Git安装在他们的系统上。
步骤3:将共享的Git项目文件夹同步到本地Google。
步骤4:在新文件夹中打开命令行接口,并执行Git克隆命令来克隆共享项目。
git克隆PATH_TO_GOOGLE_DRIVE_SYNC_FOLDER/ANY_SUBFOLDER_PATH/PROJECT_NAME.git
步骤5:为共享项目配置Git。
git远程添加PATH_TO_GOOGLE_DRIVE_SYNC_FOLDER/ANY_SUBFOLDER_PATH/PROJECT_NAME.git REMOTE_NAME
步骤6:将项目更改推送/退出远程…更改将与Google同步。示例:
git推送gdrive主机
发布于 2022-09-29 21:28:37
您不应该将存储库存储在Google或其他云同步服务上。Git按照指定的同步顺序将文件写入存储库,以确保存储库处于一致状态,并且云同步服务不会以相同的方式同步数据。
您可能更喜欢使用Google,但是如果您将Git存储库存储在其中,它几乎肯定会破坏您的存储库。如果您不喜欢有损坏的数据,那么您应该避免在存储库中使用Google。Git FAQ将在某一时刻被更新以明确地提到这一点,我强烈建议您注意这一点。
如果有必要,使用云同步服务存储包文件(用git bundle
创建)或存储库的存档(最好是tar,而不是zip)是安全的。请注意,如果在存档中包含工作树,则不应该与其他人共享存储库,因为在多个用户之间共享工作树是不安全的。
https://stackoverflow.com/questions/73886131
复制相似问题