corona-warn-app / cwa-website

Corona-Warn-App website. The CWA development ended on May 31, 2023. You still can warn other users until April 30, 2023. More information:
https://coronawarn.app/en/faq/#ramp_down
Apache License 2.0
522 stars 225 forks source link

Large file warning uploading copy of cwa-website to GitHub #3325

Closed MikeMcC399 closed 1 year ago

MikeMcC399 commented 1 year ago

Describe the issue

GitHub gives a warning regarding a video file larger than the recommended 50MB when pushing a complete local copy of corona-warn-app/cwa-website from a local machine to GitHub.

remote: warning: See http://git.io/iEPt8g for more information.
remote: warning: File science/2021-06-15-science-blog-1/v4_Teaser_CWA_Testkampagne.mp4 is 95.35 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: warning: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.

Steps to reproduce

Uses:

  1. git from https://git-scm.com/
  2. gh CLI from https://cli.github.com/

In a terminal window on a local machine:

git clone https://github.com/corona-warn-app/cwa-website cwa-website-copy

results in a successful copy from GitHub to the local machine:

Cloning into 'cwa-website-copy'...
remote: Enumerating objects: 42167, done.
remote: Counting objects: 100% (502/502), done.
remote: Compressing objects: 100% (348/348), done.
remote: Total 42167 (delta 240), reused 287 (delta 154), pack-reused 41665
85 GiB | 6.10 MiB/s
Receiving objects: 100% (42167/42167), 1.85 GiB | 5.51 MiB/s, done.
Resolving deltas: 100% (20179/20179), done.
Updating files: 100% (12856/12856), done.

Create a new private repository on GitHub https://github.com/<your-GitHub-Username>/cwa-website-copy:

cd cwa-website-copy
gh repo create cwa-website-copy --private
git remote add copy https://github.com/<your-GitHub-Username>/cwa-website-copy

Push the master branch from the local machine to GitHub:

git push copy master

results in:

Enumerating objects: 41174, done.
Counting objects: 100% (41174/41174), done.
Delta compression using up to 12 threads
Compressing objects: 100% (21068/21068), done.
Writing objects: 100% (41174/41174), 1.74 GiB | 758.00 KiB/s, done.
Total 41174 (delta 19833), reused 41157 (delta 19823), pack-reused 0
remote: Resolving deltas: 100% (19833/19833), done.
remote: warning: See http://git.io/iEPt8g for more information.
remote: warning: File science/2021-06-15-science-blog-1/v4_Teaser_CWA_Testkampagne.mp4 is 95.35 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: warning: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
To https://github.com/<your-GitHub-Username>/cwa-website-copy
 * [new branch]        master -> master

Suggestion

Review warning and consider moving videos to Git Large File Storage - https://git-lfs.github.com.


Internal Tracking ID: EXPOSUREAPP-14567

MikeMcC399 commented 1 year ago

Did you consider Git LFS or is it now too late in the project life-cycle?

larswmh commented 1 year ago

@MikeMcC399

Did you consider Git LFS or is it now too late in the project life-cycle?

Git LFS was in discussion but we finally decided against that. As this is just a warning, I think it's fine to leave it as it is for the remaining time of the project. As maybe seen in recent contributions, we're trying to keep additions as small as possible. We've definitely learned from this for the future.

As this is very similar to #2699, I'll paste my closing comment from there here.

It was internally decided that we are not going to put further effort into this issue considering this projects remaining timespan and the unforseeable impact this could have in the long run. Git LFS would not reduce the repository size, but store large files in a more favorable environment for git. Symlinks are a nice workaround but are tedious to work with because of their complexity.

However, as seen for the upcoming version 3.1, we started linking to screenshots of previous versions. In the future, the screenshot size will only grow marginally.

We also decided to keep the git history as it is for transparency reasons.

Thanks for your understanding.