rickomax / psxprev

PSXPREV - Playstation (PSX) Files Previewer/Extractor

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error cloning repo - object does not exist on the server

beeradmoore opened this issue · comments

commented

I've tried cloning this repo and I have some issues, something about errored files.

Cloning into 'C:\GitHub\psxprev'...
Warning: Permanently added the RSA host key for IP address '13.237.44.5' to the list of known hosts.
remote: Enumerating objects: 2038, done.        
remote: Counting objects: 100% (6/6), done.        
remote: Compressing objects: 100% (6/6), done.        
remote: Total 2038 (delta 2), reused 0 (delta 0), pack-reused 2032        
Receiving objects: 100% (2038/2038), 9.29 MiB | 920.00 KiB/s, done.
Resolving deltas: 100% (1261/1261), done.
Downloading Contrib/DiscUtils-master/Tests/LibraryTests/Btrfs/Data/btrfs.zip (141 KB)
Error downloading object: Contrib/DiscUtils-master/Tests/LibraryTests/Btrfs/Data/btrfs.zip (e8e8f36): Smudge error: Error downloading Contrib/DiscUtils-master/Tests/LibraryTests/Btrfs/Data/btrfs.zip (e8e8f36b0fbc9f33775f2a2d01af672a302798309b036c36fbaa549e620fa613): [e8e8f36b0fbc9f33775f2a2d01af672a302798309b036c36fbaa549e620fa613] Object does not exist on the server: [404] Object does not exist on the server
Errors logged to C:\GitHub\psxprev\.git\lfs\logs\20210510T112153.2025679.log
Use `git lfs logs last` to view the log.
error: external filter 'git-lfs filter-process' failed
fatal: Contrib/DiscUtils-master/Tests/LibraryTests/Btrfs/Data/btrfs.zip: smudge filter lfs failed
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

If I clone on macOS (although it won't run there) it clones however several of the zips in the Contrib/DiscUtils-master/Tests/ folder are 0kb. Files that break a clone are:

  • /Contrib/DiscUtils-master/Tests/LibraryTests/Btrfs/Data/btrfs.zip
  • /Contrib/DiscUtils-master/Tests/LibraryTests/Iso9660/Data/apple-test.zip
  • /Contrib/DiscUtils-master/Tests/LibraryTests/Lvm/Data/lvm2.zip
  • /Contrib/DiscUtils-master/Tests/LibraryTests/Swap/Data/swap.zip
  • /Contrib/DiscUtils-master/Tests/LibraryTests/Vhdx/Data/vhdx-log-replay.zip
  • /Contrib/DiscUtils-master/Tests/LibraryTests/Xfs/Data/xfs.zip

If you try download via the browser here you will also get a 0kb file.

Is this a git LFS issue that I am doing something wrong on my end, or are the files corrupt on github servers?

I guess on top of that is there any reason why DiskUtils is included as source rather than as a nuget? (I can see the repo is no-deps, so where you going for no nugets required?)

Same issue here. This also breaks switching branches back to no-deps. The only way I was able to clone the repo was by doing so in Windows Subsystem for Linux. Not that it would matter, but the versions were: WSL v1, Ubuntu 16.04.

The zips were non-zero in size when cloning this way, however, the size does not match! I got 131 bytes for btrfs.zip instead of 138 KB.

$ cd /mnt/c/my/directory/path
$ git clone https://github.com/<my-user-that-forked>/psxprev.git

NuGet packages would cause less problems than what no-deps is trying to solve, especially since some NuGet packages are already referenced in the project. If DiscUtils is actually modified in some way from the original source, then that would make sense, but there's no indication that that's the case.

The version of DiscUtils used in this project is 0.13.0-alpha, which is available in NuGet if the really version matters. Edit: This is actually confirmed to be 0.14.0-alpha by comparing the diffs with that in the repo. The full write-up on this comparison is described in PR #48.

The steps I needed to start contributing:

  1. Git clone my forked project from WSL and add the project to the git I was using on Windows.
  2. Open the solution /Contrib/DiscUtils-master/DiscUtils.sln.
  3. This step varies by what runtime SDKs you don't already have installed, but I manually edited the project files for the following and changed their TargetFrameworks element to just net45 (this is the only framework used by PSXPrev).
    1. DiscUtils.Core
    2. DiscUtils.Iso9660
    3. DiscUtils.Streams
  4. Change to Release mode.
  5. Rebuild each of the three projects listed above.
  6. Open the solution PSXPrev.sln, and everything should now build.