A GitHubon hosztolt projekt teljes repo méretét meg akarom tekinteni anélkül, hogy klónozni kellene. Néha ezt csinálom:

  1. Kezdjen el klónozni néhány GitHub-adattárat

    Objektumok fogadása: 45% (218 / 476), 5,50 MiB | 27 KiB / s

    Máris lemerült 5 MB? Felfüggesztés …

    ^Z 
  2. Klónozza az adattárat egy normál internetkapcsolattal rendelkező szerveren just nézze meg a méretét.

  3. Folytassa (vagy szakítsa meg) a helyi klónozást.

Hogyan tudhatom meg előre az adattár méretét? A keresésben látom az adattár méretét, de máshol nem.

Megjegyzések

Válasz

A Github API használata:

$ echo https://github.com/hlamer/enki.git | perl -ne "print $1 if m!([^/]+/[^/]+?)(?:\.git)?$!" | xargs -i curl -s -k https://api.github.com/repos/"{}" | grep size "size": 284, 

Megjegyzések

  • Mac gépen ' s nem -i paraméter a xargs paraméterhez, tehát ' s: $ echo https://github.com/hlamer/enki.git | perl -ne 'print $1 if m!([^/]+/[^/]+?)(?:\.git)?$!' | xargs -I{} curl -s -k https://api.github.com/repos/'{}' | grep size
  • és ez a méret … kilobájtban van?

Válasz

A Firefoxban az GitHub adattár mérete kiegészítést használhatja.

github információs sáv

Megjegyzések

  • Miért kell a visszavonás? Nem működik a kiterjesztés vagy a felhasználói index, vagy rosszindulatú programokat tartalmaz?
  • Nem, minden rendben működik …

Válasz

Használja a Google Chrome böngészőt, és telepítse ezt a kiterjesztést

Hozzáadja a repó méretét a kezdőlaphoz:

GitHub Repo Size kiterjesztés képernyőképe

Válasz

curl \ -H "Accept: application/vnd.github.v3+json" \ -s https://api.github.com/repos/torvalds/linux | \ jq ".size" | \ numfmt --to=iec --from-unit=1024 

Magyarázat:

  1. a repo információk beolvasása a github api alkalmazásból a curl használatával

Ilyen json választ kapunk:

{ "id": 2325298, "node_id": "MDEwOlJlcG9zaXRvcnkyMzI1Mjk4", "name": "linux", "full_name": "torvalds/linux", "private": false, ... "size": 3018913, <<<This is what we need "stargazers_count": 99224, "watchers_count": 99224, ... } 
  1. Írja be a json válaszát a jq elemzőre , és keresse meg a szükséges attribútum-érték párost.

    . jelzi a json törzs gyökerét, és a size a szükséges attr ibute a gyökér törzséből

Kimenet (a méret kB-ban):

3018913 
  1. Ezután csatolja a kimenetet a numfmt
$ man numfmt --to=[UNIT] iec 1K = 1024, 1M = 1048576, ... --from-unit=N specify the input unit size (instead of the default 1) (it basically tells that the input is in kB(1024B) insted of B 

Kimenet:

2.9G 

Privát repók esetén fejlécként adjon meg egy tokent

-H "Authorization: token GITHUB_TOKEN" 

csere GITHUB_TOKEN egy github tokennel , amely hozzáférést biztosít a privát repókhoz

https://command-not-found.com/jq

https://command-not-found.com/numfmt

Megjegyzések

  • Meg tudja magyarázni, hogy ez a parancs mit csinál? Hogyan segít ebben a helyzetben? Köszönet
  • A curl segítségével lekéri a lerakat metaadatait, majd kivonja a " size "

használatával, majd a nyers bájtokat ember által olvasható fájlméretekké konvertálja a numfmt

használatával.

Válasz

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük