গিটহাবের সংগ্রহস্থলটির ক্লোনিংয়ের আগে কীভাবে আমি তার আকার দেখতে পারি?


330

গিটহাবের ক্লোন তৈরি করার সিদ্ধান্ত নেওয়ার আগে গিট রিপোজিটরি কত বড় তা দেখার কোনও উপায় আছে?

এটি সত্যিই সুস্পষ্ট / মৌলিক পরিসংখ্যানের মতো বলে মনে হচ্ছে তবে গিটহাবের মধ্যে এটি কীভাবে দেখা যায় তা আমি খুঁজে পাচ্ছি না।



4
@ কেনিটিএম খুব অনুরূপ প্রশ্ন, হ্যাঁ, তবে এটি কেবল গিট প্রোটোকল ব্যবহার করে কোনও পদ্ধতির চেয়ে গিথুবকে সুনির্দিষ্ট।
jhabbott

1
এফওয়াইআই, এই ক্রোম এক্সটেনশানটি পরীক্ষা করে দেখুন যা গিটহাবের সংগ্রহস্থল সংক্ষিপ্তসার github.com/harshjv/github-repo-size এ স্বয়ংক্রিয়ভাবে সংগ্রহের আকার যুক্ত করে । আপডেট: এটিকে উত্তর হিসাবে যুক্ত করেছেন
হর্ষ ভখারিয়া

এখানে একটি ইঙ্গিত রয়েছে: আমার নিখুঁত বৃহত্তম সংগ্রহস্থলটিতে বিভিন্ন ফর্ম্যাটগুলির কেবলমাত্র চিত্র রয়েছে, এটি আইকনের একটি "আর্টওয়ার্ক" রেপো যা আমি বিভিন্ন অ্যাপ্লিকেশনে ব্যবহার করি। তবুও, গিটহাব 0 হিসাবে আকারটি প্রতিবেদন করে So সুতরাং আমি ধরে নিচ্ছি এটি কেবল জ্ঞাত উত্স ফাইলগুলির আকার বিবেচনা করে এবং অজানা ফাইলের প্রকারগুলি বিবেচনা করে না।
জেরি ডজ

উত্তর:


276

গিটহাব এপিআইয়ের মাধ্যমে এই তথ্য অ্যাক্সেস করার একটি উপায় আছে ।

একটি সংগ্রহস্থল সম্পর্কিত তথ্য পুনরুদ্ধার করার সময়, নামের একটি সম্পত্তি sizeকিলোবাইটে পুরো সংগ্রহস্থলের আকার (তার সমস্ত ইতিহাস সহ) আকারে মূল্যবান হয়।

উদাহরণস্বরূপ, গিট সংগ্রহস্থলের ওজন প্রায় 124 এমবি। sizeফিরে তাদেরকে JSON পে লোড সম্পত্তির মূল্য দেওয়া হয় 124283

হালনাগাদ

আকারটি সত্যই কিলোবাইটগুলিতে সার্ভার-সাইড বেয়ার রিপোজিটরির ডিস্ক ব্যবহারের ভিত্তিতে প্রকাশ করা হয়। তবে, বৃহত নেটওয়ার্কের সাহায্যে সংগ্রহস্থলগুলির সাথে অত্যধিক স্থান অপচয় না করার জন্য, গিটহাব গিট বিকল্পগুলিতে নির্ভর করে । এই কনফিগারেশনে, খালি সংগ্রহস্থলের বিপরীতে ডিস্কের ব্যবহার গণনা করা ভাগ করা অবজেক্ট স্টোরের জন্য অ্যাকাউন্ট করে না এবং এইভাবে API কলের মাধ্যমে একটি "অসম্পূর্ণ" মান প্রদান করে।

এই তথ্যটি গিটহাব সমর্থন দিয়ে দিয়েছে।


12
এখনই এমবি-তে আকার নয় -> এটি এতটা পরিষ্কার নয়, দেখে মনে হচ্ছে এটি নির্ভর রেপোর উপর নির্ভর করে ... ছোট রেপোগুলি বাইট আকারে আকার মেলে, বড় মেগাবাইটে। আমি গিটহাব সমর্থনে একটি সমস্যা খুলেছি। সমস্যাটি বন্ধ হয়ে যাওয়ার সাথে সাথে উত্তরটি আপডেট করব।
নোটালোকেন

6
এটি ব্যক্তিগত রেপোর জন্য কাজ করে বলে মনে হচ্ছে না। আমি কিছু অনুপস্থিত করছি? ধন্যবাদ!
21:42-

14
@ নরোজ চেষ্টা করুন $ curl -u "{:username}" https://api.github.com/repos/{:organization}/{:repository}বিকাশকারী.
github.com/v3/#authentication

1
@ নালটোকেন কেবি / এমবি ইত্যাদির প্রশ্নে কোনও প্রতিক্রিয়া?
nealmcb

2
সবেমাত্র একটি রেপো কাঁটাচামচ করেছেন (সেপ্টেম্বর 9, 2018) এবং এটি কেবি, এমবি নয়
জ্যাকব স্ট্যামম

109

আপনার যদি সংগ্রহস্থলের মালিকানা থাকে তবে আপনি নিজের অ্যাকাউন্ট সেটিংসসংগ্রহস্থলগুলি ( https://github.com/settings/repositories ) খোলার মাধ্যমে সঠিক আকারটি খুঁজে পেতে পারেন এবং তার স্থান নির্ধারণের পাশের ভান্ডার আকারটি প্রদর্শিত হবে।

আপনার যদি সংগ্রহস্থলের মালিকানা না থাকে তবে আপনি এটি কাঁটাচামচ করতে পারেন এবং তারপরে একই জায়গায় চেক করতে পারেন।

কিছুটা হ্যাকি: download as a zip fileবিকল্পটি ব্যবহার করুন , নির্দেশিত ফাইলের আকারটি পড়ুন এবং তারপরে এটি বাতিল করুন।

জিপ হিসাবে ডাউনলোড করা কখনও কাজ করেছিল কিনা তা আমার মনে নেই তবে কোনও অবস্থাতেই এখন এটি করা বর্তমানে কেবলমাত্র নির্বাচিত শাখাটি কোনও ইতিহাসবিহীন ডাউনলোড করে।


জিপ সংকোচনের বিষয়টি একাউন্টে নেওয়া উচিত নয়? উত্স কোড এবং পাঠ্য ফাইলগুলি আমার মনে হয় প্রায় 60% পর্যন্ত সংকুচিত করা যেতে পারে।
fdledgling

ডাউনলোড শেষ না করে জিপের সংকোচনের অনুপাত পরীক্ষা করার কোনও উপায় সম্পর্কে আমি অসচেতন। অবশ্যই আপনি ডাউনলোডটি সম্পূর্ণ করতে পারেন এবং তারপরে সংক্ষেপণের অনুপাতটি পরীক্ষা করতে পারেন। তবে সেই মুহুর্তে আপনি সরাসরি আনজিপ করে সরাসরি রেপো আকারটি পরীক্ষা করতে পারেন। এটি আপনার কতটা সঠিক হতে হবে তা নির্ভর করে। এবং যদি আপনি রেপো ডাউনলোড করতে সক্ষম হন তা পরীক্ষা করতে পারেন।
কোটেডমুস

1
আমি এটি সন্ধান করতে পারি না Settings > Repositories, তবে এর পরিবর্তে Account Settings > Repositoriesআপনার গিট হোম পৃষ্ঠার নিচে রেপো আকারটি পেয়েছি । অবশ্যই, এটি কেবলমাত্র আপনার নিজের (বা কাঁটাচালিত) পোস্টগুলির সাথে কাজ করে।
modulitos

সংস্থাগুলির অ্যাকাউন্ট সেটিংসে রেপো আকার দেখানোর জন্য উপস্থিত হয় না, তাই যদি আপনি কোনও ব্যবহারকারী হিসাবে কোনও সংস্থা হিসাবে না, তবে কোনও সংস্থা হিসাবে থাকেন?
বেনেট ব্রাউন 15

2
জিপ ফাইলের আকারের প্রকৃত সংগ্রহস্থলের আকারের কোনও ইঙ্গিত নেই : 1) এতে কেবল কোনও ইতিহাস নেই এবং প্রদত্ত সংশোধনীতে সংগ্রহস্থলের একটি স্ন্যাপশট অন্তর্ভুক্ত থাকে) 2) গিট সংগ্রহস্থলগুলি প্যাক ফাইল হিসাবে সংরক্ষণ করা হয় যা সংকুচিত হয়, এমন নয় ডুপ্লিকেট ইত্যাদি সঞ্চয় করুন
কিনন

74

আপনি যদি গুগল ক্রোম ব্রাউজার ব্যবহার করেন তবে আপনি গিটহাব সংগ্রহস্থল আকারের এক্সটেনশনটি ইনস্টল করতে পারেন ।

এখানে চিত্র বর্ণনা লিখুন

রেপো এখানে: https://github.com/harshjv/github-repo-size


4
কোন ফায়ারফক্স বন্দর?
বনে ইসহাক কে

2
@ বানী ইশাকেক এটি একরকম নয় তবে এটি আপনাকে রেপো আকারটি এটি এখানে
দেখায়

1
এখনই আপডেট করুন, যতক্ষণ আপনি গিথুব টোকেন সরবরাহ করেন ততক্ষণ ব্যক্তিগত সংগ্রহস্থলগুলিতেও পুরোপুরি কাজ করে।
সিদ্ধন্ত রিমাল

2
এখনও নির্ভরযোগ্য নয়, এটি গিটহাব এপিআই ব্যবহার করে, যা সঠিক আকারের প্রতিবেদন করে না। আমার কাছে ইমেজ (কোড নেই) ব্যতীত কিছু নেই, এবং এপিআই 0 টি হিসাবে আকারটি প্রতিবেদন করে, যদিও এটি আমার সবচেয়ে বড় রেপো। এই এক্সটেনশনটি আমাকে এই নির্দিষ্ট রেপোর আকারও দেখায় না (সম্ভবত এটি 0 টি দেখায়)।
জেরি ডজ

19

@ ল্যারোলান দুর্দান্ত নমুনা কোড। নতুন গিটহাব এপিআই ভি 3 এর সাথে কার্ল স্টেটমেন্টটি আপডেট করা দরকার। এছাড়াও, লগইন আর প্রয়োজন হয় না:

curl https://api.github.com/repos/$2/$3 2> /dev/null | grep size | tr -dc '[:digit:]'

উদাহরণ স্বরূপ:

curl https://api.github.com/repos/dotnet/roslyn 2> /dev/null | grep size | tr -dc '[:digit:]'

আয় 931668(কিলোবাইট মধ্যে), প্রায় এক গিগাবাইট, যা।


5
এটি ব্যক্তিগত রেপোর জন্য কাজ করে বলে মনে হচ্ছে না। আমি কি অনুপস্থিত কিছু আছে? ধন্যবাদ!
21:42-

1
আমি আশা করি আপনি কিছু ব্যাখ্যা দিয়ে আপনার উত্তরটি আরও প্রসারিত করুন, যাতে লোকেরা তাদের প্রয়োজন অনুসারে এটি পরিবর্তন করতে পারে।
শিমি ওয়েটজ্যান্ডলার

10

এটি কার্ল (sudo apt-get curl) এবং জসন প্রিটি (sudo রত্ন ইনস্টল করুন json ব্যাখ্যা জেসন) দিয়ে এটি করার জন্য:

curl -u "YOURGITHUBUSERNAME" http://github.com/api/v2/json/repos/show/OWNER/REPOSITORY |
  jsonpretty

আপনার গিটহাব ব্যবহারকারীর নাম (চিত্র দেখুন) সাথে YOURGITHUBUSERNAME প্রতিস্থাপন করুন।

সংগ্রহস্থল মালিকের গিট ব্যবহারকারীর সাথে OWNER প্রতিস্থাপন করুন। সংগ্রহস্থলের নামের সাথে প্রতিস্থাপন প্রতিস্থাপন করুন।

বা একটি দুর্দান্ত বাশ স্ক্রিপ্ট হিসাবে (এটি গিটারপো-ইনফো নামে একটি ফাইলে পেস্ট করুন):

#!/bin/bash
if [ $# -ne 3 ]
then
  echo "Usage: gitrepo-info <username> <owner> <repo>"
  exit 65
fi
curl -u "$1" http://github.com/api/v2/json/repos/show/$2/$3|jsonpretty

এটি এর মতো ব্যবহার করুন:

gitrepo-info larowlan pisi reel

এটি আমাকে গিটহাবের পিসি / রিল সংগ্রহস্থল সম্পর্কিত তথ্য দেবে ।


1

আপনাকে গিটহাব এপিআই অনুসরণ করতে হবে। আপনার সংগ্রহস্থল সংক্রান্ত সমস্ত তথ্যের জন্য ডকুমেন্টেশনটি এখানে দেখুন । এটির জন্য আপনাকে জিইটি অনুরোধ করা দরকার:

জিইটি / রেপোস /: মালিক /: সংগ্রহস্থল

আপনার দুটি জিনিস প্রতিস্থাপন করতে হবে:

  1. : মালিক - ভাণ্ডারটির মালিক এমন ব্যক্তির ব্যবহারকারীর নাম
  2. : সংগ্রহস্থল - সংগ্রহস্থলের নাম

উদাহরণস্বরূপ, আমার ব্যবহারকারীর নাম মহেশ্মঞ্জ এবং আমি একটি ভাণ্ডার, বিড়বিড় করে -ইউআই-সুন্দর , তাই আমার জিইটি ইউআরএল হ'ল :

https://api.github.com/repos/maheshmnj/flutter-ui-nice

একটি জিইটি অনুরোধ করার সময়, আপনাকে কিছু জেএসওএন ডেটা দিয়ে প্লাবিত করা হবে এবং সম্ভবত number৮ নং লাইনে আপনার একটি চাবি নামের আকার দেখতে হবে যা ভান্ডারের আকারটি ফিরে আসবে।

পরামর্শ: JSON এর সাথে কাজ করার সময় আমি আপনাকে একটি প্লাগইন যুক্ত করার পরামর্শ দিচ্ছি যা JSON পড়া সহজ করার জন্য JSON ডেটা ফর্ম্যাট করে। প্লাগইন ইনস্টল করুন


ক) যতগুলি প্রতিবেদন করছে, এই আকারটি সঠিক এবং নির্ভরযোগ্য নয়। খ) এটি থাকলেও, জেএসওএন, লাইন নম্বর, এবং বিন্যাসকরণের জন্য দৃষ্টিভঙ্গি পড়ার বিষয়ে আপনার নোট (গুলি) সমস্ত অর্থহীন। JSON মানুষের পড়া বোঝার জন্য নয়, এটি কম্পিউটার পড়ার জন্য। sizeআপনার প্রতিক্রিয়াটিতে কীটি পড়ার জন্য আপনাকে উল্লেখ করা উচিত , 78 নং লাইনের নয় mention উল্লেখ করার মতো নয়, বিভিন্ন ফর্ম্যাটারের বিভিন্ন স্থানে বিভিন্ন লাইন বিরতি থাকবে, আলাদা লাইন নম্বরে পছন্দসই ডেটা রেখে leaving
জেরি ডজ

@ জেরিডজ প্রথমে আপনার উল্লেখ করা উত্তরটি মনোযোগ সহকারে পড়তে হবে `` `আপনার একটি আকারের চাবি see` should probablyদেখতে হবে এবং আমি বলেছিলাম যে এটি আপনার line 78 নং লাইনে দেখা উচিত, যাতে এটি নির্দেশ করে যে আপনি 78 78 এর আশেপাশে কোথাও সাইজের কীটি দেখতে পাবেন দ্বিতীয়ত, যদি গিথুব এপিআইএসের আকারটি সঠিক না হয় তবে আমি মনে করি না আপনি গিথুব এপিসের চেয়ে আরও সঠিক কিছু খুঁজে পাবেন।
maheshmnj

আমার কাছে ইমেজগুলির একটি ভাণ্ডার রয়েছে। চিত্রগুলি বাইনারি ডেটা। এই রেপোতে কোনও পাঠ্য ফাইল নেই। গিটহাব সর্বত্র প্রতিবেদন করে যে এটি 0 বাইট গ্রহণ করে। এমনকি ওয়েবসাইট / প্লাগইন।
জেরি ডজ

0

@ ল্যারোলান, @ ভিএমট্রোপার এবং @ বাহিদ চকোশি সমাধানগুলি সংক্ষিপ্ত করতে:

#!/usr/bin/env bash


if [ "$#" -eq 2 ]; then
    echo "$(echo "scale=2; $(curl https://api.github.com/repos/$1/$2 2>/dev/null \
    | grep size | head -1 | tr -dc '[:digit:]') / 1024" | bc)MB"
elif [ "$#" -eq 3 ] && [ "$1" == "-z" ]; then
    # For some reason Content-Length header is returned only on second try
    curl -I https://codeload.github.com/$2/$3/zip/master &>/dev/null  
    echo "$(echo "scale=2; $(curl -I https://codeload.github.com/$2/$3/zip/master \
    2>/dev/null | grep Content-Length | cut -d' ' -f2 | tr -d '\r') / 1024 / 1024" \
    | bc)MB"
else
    printf "Usage: $(basename $0) [-z] OWNER REPO\n\n"
    printf "Get github repository size or, optionally [-z], the size of the zipped\n"
    printf "master branch (`Download ZIP` link on repo page).\n"
    exit 1
fi

0

একটি ব্যক্তিগত সংগ্রহস্থলের জন্য, আপনাকে https://github.com/settings/tokens থেকে ব্যক্তিগত অ্যাক্সেস টোকন গ্রহণ করতে হবে ।

তারপরে বিশদটি পেতে ([টোকেন], [মালিক] এবং [নাম] এর মানগুলিতে প্রতিস্থাপন) পেতে নিম্নলিখিত কার্ল কমান্ডটি ব্যবহার করুন:

curl -u git:[token] https://api.github.com/repos/[owner]/[name] 2> /dev/null | grep size

পূর্বে উল্লিখিত হিসাবে, আকার এমবি বা কেবিতে হতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.