Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Git lfs从每个文件中删除了代码-Kotlin_Android_Git_Kotlin_Git Lfs - Fatal编程技术网

Android Git lfs从每个文件中删除了代码-Kotlin

Android Git lfs从每个文件中删除了代码-Kotlin,android,git,kotlin,git-lfs,Android,Git,Kotlin,Git Lfs,我在使用git lfs之前已经提交了一些大文件,因此我必须使用所提供的git lfs migrate import,重新编写提交,然后我能够将其推送到服务器上。但反过来,它又将整个项目的每个.kt、.xml文件更改为以下3行: version https://git-lfs.github.com/spec/v1 oid sha256:e1bc1da7265eea2b374ddf30546ddabfa size 21093 在Github上打开任何文件都不起作用,但下载文件并打开它会起作用,这意

我在使用git lfs之前已经提交了一些大文件,因此我必须使用所提供的
git lfs migrate import
,重新编写提交,然后我能够将其推送到服务器上。但反过来,它又将整个项目的每个.kt、.xml文件更改为以下3行:

version https://git-lfs.github.com/spec/v1
oid sha256:e1bc1da7265eea2b374ddf30546ddabfa
size 21093
在Github上打开任何文件都不起作用,但下载文件并打开它会起作用,这意味着我还有一个备份以及我一直创建的ZIP备份。因为我有一个庞大的项目,如何清理/回滚这个混乱

终端日志:

C:\Users\X\Documents\Projects\X>git lfs migrate import
migrate: override changes in your working copy? [Y/n] y
migrate: changes in your working copy will be overridden ...
migrate: Fetching remote refs: ..., done.
migrate: Sorting commits: ..., done.
migrate: Rewriting commits: 100% (2/2), done.
  master        f42b3a9d9874f2da0922 -> 7a1881a54a114be8474
migrate: Updating refs: ..., done.
migrate: checkout: ..., done.

C:\Users\X\Documents\Projects\X>git lfs migrate info
migrate: Fetching remote refs: ..., done.
migrate: Sorting commits: ..., done.
migrate: Examining commits: 100% (2/2), done.
*.xml   109 KB  845/845 files(s)        100%
*.kt    80 KB   621/621 files(s)        100%
*.png   22 KB   173/173 files(s)        100%
*.ttf   1.6 KB    12/12 files(s)        100%
*.apk   1.2 KB      9/9 files(s)        100%

C:\Users\X\Documents\Projects\X>git push -u origin master
Uploading LFS objects: 100% (1695/1695), 1.4 GB | 3.7 MB/s, done.
Enumerating objects: 3332, done.
Counting objects: 100% (3332/3332), done.
Delta compression using up to 16 threads
Compressing objects: 100% (1823/1823), done.
Writing objects: 100% (1852/1852), 256.98 KiB | 735.00 KiB/s, done.
Total 1852 (delta 7), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (7/7), completed with 3 local objects.
To https://github.com/X/X.git
   6ee589d..7a1881a  master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

另外,现在我在Android Studio中看不到Git,甚至在上面的VCS菜单中也没有选项。我检查了整个项目,它已经从每个文件中删除了代码,甚至从gradle文件、.idea配置文件、文本文件等中也删除了代码。

我已经解决了这个对我来说很新的问题。它可能会帮助其他人

因此,我想做的是支持大文件,我使用了
git-lfs
,但由于我已经提交了代码,我必须使用
git-lfs-migrate-import
,它编辑已经提交的更改,并将“假定”的大文件添加到能够存储大文件的存储库中

但是,这个命令添加了所有文件并提供了一个指针,正如Torek在评论中提到的那样

我阅读了他们的帮助文档,为了解决这个问题,首先我运行了一个命令
git-lfs checkout
,它将文件的原始内容从repo恢复到本地文件,然后我删除了添加到
.gittributes
的所有类型的文件,除了我最初使用的
git-lfs
git lfs
.gittributes
一起使用


然后,我做了一个新的提交和推送,现在一切都很好。午夜的旅程真糟糕,我睡不着觉。

你在你的存储库中运行了
git-lfs install
?如果不是,那么这样做,然后检查您想要的分支是否可以解决问题?Git LFS不是Git(它使用Git,但位于它前面),但事实上这就是它应该做的。这三行文件是Git LFS存储在Git中的文件。它们是“指针文件”:其中的内容使Git LFS能够检索实际文件。这就是为什么您现在必须使用Git LFS的原因。您可以继续使用Git LFS(请确保在每个克隆中都使用该
Git LFS安装
thing注意,这必须在每个克隆中完成),也可以从导入之前的时间返回到存储库。@torek我可以通过访问网站查看文件中的代码的唯一方法,打开一个文件,单击
查看原始文件
,下载该文件,然后用任何查看器打开。在
git lfs migrate
之前的存储库仍将保留原始提交,其中保存原始文件。之后的存储库具有全新的提交;新的提交将安装指针文件来代替任何迁移的文件。