গিথুব ভান্ডারগুলিকে ভুল ভাষায় পরিবর্তন করে


112

আমি জানি এটি কোনও বিশাল চুক্তি নয় তবে আমি চাই আমার গিথুব ভাষাগতভাবে বৈচিত্র্যযুক্ত হোক। আমি সুইফটে একটি প্রকল্প লিখেছিলাম এবং যখন আমি এটি প্রতিশ্রুতিবদ্ধ তখন বলে যে এটি উদ্দেশ্য সিতে রয়েছে in

আমি মনে করি এটি হতে পারে কারণ পার্স ফ্রেমওয়ার্কগুলি উদ্দেশ্য সিতে লেখা হয়েছে এবং এটি এটি সনাক্ত করে তবে মূল সংগ্রহস্থল পৃষ্ঠায় প্রদর্শনের ভাষা পরিবর্তন করার কোনও উপায় আছে কি?


উত্তর:


129

আমি খুঁজে পেলাম সবচেয়ে সহজ জিনিসটি ছিল .gitattributesআমার সংগ্রহস্থলের মূল ফোল্ডারে একটি ফাইল তৈরি করা এবং এই বিষয়গুলি দেওয়া:

* linguist-vendored
*.js linguist-vendored=false

এই উদাহরণটি গিথুব / ভাষাবিদকে সমস্ত ফাইল উপেক্ষা করতে বলে, তারপরে কেবল .js ফাইলগুলি দেখুন। আমার প্রকল্প https://github.com/aim12340/jQuery-Before-Ready এইচটিএমএল হিসাবে তালিকাভুক্ত হয়েছিল কারণ এইচটিএমএল উদাহরণ ফাইলগুলি জেএস ফাইলগুলির চেয়ে বড় ছিল। এই ফাইলটি আমার জন্য এটি ঠিক করে এবং এখন এটি জাভাস্ক্রিপ্ট হিসাবে তালিকাভুক্ত


4
উপরের বিষয়বস্তু সহ কেবলমাত্র রেপো রুট ফোল্ডারের অধীনে একটি নতুন .gitattributes ফাইল তৈরি করুন, তাত্ক্ষণিক সংশোধন করুন!
গুব00

দুর্দান্ত. আমার একটি স্কেলা প্রকল্প ছিল যা সিএসএস প্রকল্প হিসাবে লেবেলযুক্ত ছিল। ভাল নয়;;)
ওবজেটওয়ার্কস

4
একটি নোংরা মন্তব্য হতে পারে তবে আপনি যদি অবাক হন ঠিক কী করবেন, ১. @ গব00st তার মন্তব্যে গাইডেন্স অনুসরণ করুন এবং ২। আপনার মূল ভাষার ফাইলগুলির প্রসারিত করে ".js" প্রতিস্থাপন করুন
এলিজাবেথ

অনেক ধন্যবাদ. আমি প্রচুর নিবন্ধ পেরিয়েছি কিন্তু এগুলি ব্যতীত তাদের পক্ষে কেউই আমার পক্ষে কাজ করেনি।
মোডো

আমার এএসপি.নেট কোর প্রকল্পের জন্যও আমার একই রকম সমস্যা ছিল। জিথব ভেবেছিল এটি www ফোল্ডারের অধীনে জেএস ফাইলের পরিমাণের কারণে এটি একটি জাভাস্ক্রিপ্ট রেপো। [ওয়েবপ্রজেক্টফোল্ডার] / wwwroot / * ভাষাবিদ-বিক্রেতাদের সাথে .gitattributes ফাইল যুক্ত করা এটি ঠিক করেছে। ধন্যবাদ.
মোস্তফা

67

যেমন গিটহাব সহায়তা পৃষ্ঠাতে উল্লিখিত হয়েছে

সিনট্যাক্স হাইলাইটিং এবং সংগ্রহস্থলের পরিসংখ্যানের জন্য ফাইলের ভাষা নির্ধারণ করতে গিটহাব ওপেন সোর্স ল্যাঙ্গুয়েস্ট লাইব্রেরি ব্যবহার করে ।
কিছু ফাইল সনাক্ত করা শক্ত, এবং কখনও কখনও প্রকল্পগুলিতে তাদের প্রাথমিক কোডের চেয়ে বেশি গ্রন্থাগার এবং বিক্রেতা ফাইল থাকে।

সুতরাং github/linguist#troubleshootingএই পরিস্থিতিটি ঠিক করার জন্য আপনার সাথে চেক করা উচিত।

শতকরা তালিকা ভাষার ভাষাগুলি এপিআই দ্বারা প্রতিবেদন করা প্রতিটি ভাষার কোড বাইটের ভিত্তিতে গণনা করা হয় ।
যদি বারটি এমন কোনও ভাষার প্রতিবেদন করে যা আপনি আশা করেন না:

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

ফেব্রুয়ারী 2017 আপডেট করুন (এক বছর পরে):

মনিকা পাওয়েল-র " গিটহাবে রেপো ল্যাঙ্গুয়েজ কীভাবে পরিবর্তন করবেন " নিবন্ধটি

আপনার প্রকল্পগুলির ভাষা কীভাবে গিটহাবের ভুল বর্ণনামূলক সমাধান করতে হবে তা নিয়ে গবেষণা করার পরে আমি সমাধানটি খুঁজে পেলাম যে গিটিহাবকে কোন ফাইলগুলি উপেক্ষা করা উচিত তা বলার মতোই সমাধান।

আপনি যদি এখনও কোন ব্যবহার করতে পারবেন না GitHub থেকে এই ফাইলগুলি কমিট এবং সেইজন্য চান, যখন .gitignore আপনি GitHub এর ভাষাতত্ত্ববিদ যা মধ্যে উপেক্ষা করা ফাইল বলতে পারেন .gitattributesফাইল

static/* linguist-vendored

এই এক-লাইন ফাইলটি গিটহবকে আমার static/ফোল্ডারে আমার সমস্ত ফাইল উপেক্ষা করতে বলেছিল যেখানে ফ্লাস্ক অ্যাপ্লিকেশনের জন্য সিএসএস এবং অন্যান্য সম্পদ সঞ্চিত রয়েছে

"ব্যবহার করে .gitattributes" বিভাগে চিত্রিত কীভাবে ভুল ভাষায় চিহ্নিত করতে।
এই ক্ষেত্রে:

আপনার গিট রেপোতে আপনি জাভাস্ক্রিপ্ট লাইব্রেরিগুলির মতো লিখেন নি এমন কোড চেক করা একটি প্রচলিত অভ্যাস, তবে এটি প্রায়শই আপনার প্রকল্পের ভাষার পরিসংখ্যানকে স্ফীত করে এবং এমনকি আপনার প্রকল্পটিকে অন্য ভাষা হিসাবে লেবেলযুক্ত করতে পারে
ডিফল্টরূপে, ভাষাতত্ত্ববিদ বিক্রেতার হিসাবে সংজ্ঞায়িত সমস্ত vendor.ymlপাথকেই আচরণ করে এবং তাই এগুলি কোনও সংগ্রহস্থলের ভাষার পরিসংখ্যানগুলিতে অন্তর্ভুক্ত করে না।

ভাষাবিদ-বিক্রেতিত গুণাবলী বিক্রেতাকে বা আন-বিক্রেতার পথে ব্যবহার করুন।

$ cat .gitattributes
special-vendored-path/* linguist-vendored
jquery.js linguist-vendored=false

আমার জন্য কাজ, যদিও এখন ভাবছি কিভাবে এই পারা এখনও GitHub থেকে কাজ যদি .gitattribute .gitignore হয় GitHub স্পষ্টত ফাইল দরকার কিন্তু আমি কি আসলেই কোনো আমার রেপো তে এটি করতে চান না ... যেমন
ডেভ Everitt

4
.gitattributes এবং .gitattribute
Derzu

জানতাম না .গিটট্রিবিউটসের অস্তিত্ব ছিল। ধন্যবাদ +1
স্কিপসাইকো

আমার ক্ষেত্রে আমি চেয়েছিলাম আমার গিটহাব প্রোফাইলের README.md দেখাতে (যেমন এটি যে রেপোতে আক্ষরিক অর্থে কেবলমাত্র ফাইল ছিল) তাই আমি .gitattributes এর সাথে তৈরি করেছি: *.md liguist-detectable README.md -linguist-documentation বিশদ লিঙ্ক
হিকসি

35

এটিকে সহজ করার জন্য, আমাকে আমার পদক্ষেপগুলি ভাগ করতে দিন:

  1. আপনার প্রকল্পের মূল ফোল্ডারে ডিরেক্টরি পরিবর্তন করুন;

  2. আপনার পছন্দের ওয়েটারভার সরঞ্জাম ব্যবহার করে .gitattributes নামে একটি ফাইল তৈরি করুন:

    স্পর্শ .gitattributes

  3. গিথুবকে কীভাবে করবেন তা জানানোর জন্য ভাষাবিদ গ্রন্থাগারের নির্দেশাবলী অনুসরণ করে ফাইল সম্পাদনা করুন :

    vi .gitattributes

    ভাষাতত্ত্ববিদ-বিক্রেতাদের ব্যবহার গিথবকে এই ফোল্ডার এবং উপ-ফোল্ডারগুলির জন্য সনাক্তকরণ "এড়িয়ে যেতে" দিতে দেয়:

    src/main/resources/static/* linguist-vendored

    ডকুমেন্টেশন হিসাবে পাথ চিহ্নিত বা চিহ্ন চিহ্ন করতে ভাষাতত্ত্ববিদ-ডকুমেন্টেশন অ্যাট্রিবিউটটি ব্যবহার করুন:

    project-docs/* linguist-documentation

    অথবা ডকুমেন্টেশনযুক্ত একটি পৃথক ফাইল চিহ্নিত করুন mark

    documented_code.rb linguist-documentation=true

    এটি কিছুটা অদ্ভুত তবে আপনি এটিও করতে পারেন - কিছু নির্দিষ্ট ফাইল (যেমন * .rb) জাভা হিসাবে কিছু ফাইলকে ট্রিট করতে গিথবকে বলতে:

    *.rb linguist-language=Java

  4. গিট অ্যাড, কমিট এবং তারপরে এটি গিথুবকে চাপ দিন, লেবেলটি প্রায় সঙ্গে সঙ্গে সংশোধন করা হবে।


আমার জন্য পরিশ্রমী, আমি আমার। গিটটিগ্রিবিউট ফাইলে লাইনগুলি যুক্ত করেছি *.java linguist-detectable=false *.dart linguist-language=Dart *.dart linguist-detectable=true android/* linguist-vendored build/* linguist-vendored
চিরাগ সাবসানী

19

আপনার .gitattributes এর সাথে প্রতিস্থাপন করুন যা সমস্ত ফাইলকে জাভা হিসাবে পুনরায় শ্রেণিবদ্ধ করে ।

 *.* linguist-language=Java

ভাষাবিদ


10

.gitattributesআপনার ফোল্ডারের মূলটিতে ফাইল তৈরি করুন। মনে করুন আপনি ভাষাটি জাভা হতে চান, কেবল অনুলিপি করুন:

*.java linguist-detectable=true
*.js linguist-detectable=false
*.html linguist-detectable=false
*.xml linguist-detectable=false

মধ্যে .gitattributesফাইল এবং রেপো ফাইল ধাক্কা। ভাষার পরিবর্তন দেখতে আপনার গিটহাব পৃষ্ঠাটি রিফ্রেশ করুন।

দ্রষ্টব্য : সুতরাং, পছন্দসই ভাষার জন্য এটি সত্য এবং অন্যের মিথ্যা করুন। এটা ঠিক কাজ করা উচিত।


2

আমার একটি প্রকল্প ছিল যা অবজেক্টিভ-সি-তে শুরু হয়েছিল এবং পুরোপুরি সুইফটে পরিবর্তিত হয়েছিল (নতুন প্রকল্প তবে একই সংগ্রহস্থল ডিয়ারে)। গিথুব এটিকে উদ্দেশ্যমূলক-সি হিসাবে চিহ্নিত করেই থাকি না কেন আমি গিটাট্রিবিটসই রেখেছি। (উপরের সমস্ত সমাধান)

সুতরাং, যদি জিগটি আপ হয়, এবং আপনি নিশ্চিত যে সমস্ত প্রকল্প এক ভাষা - আপনি মূলত:

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

শুধুমাত্র এটি সমস্যার সমাধান করেছে :)


2

.Gitattributes ফাইলটিতে কেবল ভাষাবিদকে বলুন যে ফাইলগুলি আপনি চান না তা নির্ধারণ করুন।

জাভাস্ক্রিপ্ট ফাইলগুলি উপেক্ষা করার উদাহরণ।

*.js linguist-vendored

2

আপনি যদি লারাভেল সংগ্রহস্থলের ভাষা পরিবর্তন করতে চান তবে আপনার .gitattributesফাইলটিতে নিম্নলিখিত লাইনটি যুক্ত করুন:

*.blade.php linguist-vendored

গিটহাব ব্লেড ফাইলগুলি এইচটিএমএল হিসাবে সংজ্ঞায়িত করে, তবে *.html linguist-vendoredকাজ করে না।


2

আপনি আপনার ফাইলে গিথুব ভাষাবিদ সনাক্তকরণযোগ্য বিকল্পটি ব্যবহার করে অপ্রত্যাশিত ভাষা সনাক্তকরণ (এক্সটেনশন বা প্রজেক্ট সাবফোল্ডার ইত্যাদি) এড়াতে পারবেন .gitattributes:

ভাষার পরিসংখ্যানগুলিতে কেবল প্রোগ্রামিং ভাষা অন্তর্ভুক্ত থাকে। ভিন্ন ধরণের ভাষা (যেমন সংজ্ঞায়িত করা হয় languages.yml) "সনাক্তযোগ্য" নয় কারণ এগুলি ভাষার পরিসংখ্যানগুলিতে অন্তর্ভুক্ত না করে।

linguist-detectableসনাক্তকারী হিসাবে চিহ্নিত চিহ্ন বা চিহ্নচিহ্নগুলি চিহ্নিত করতে বৈশিষ্ট্যটি ব্যবহার করুন :

*.kicad_pcb linguist-detectable=true
*.sch linguist-detectable=true
tools/export_bom.py linguist-detectable=false

1

সমাধানটি যা বিশেষজ্ঞ ইমনএম দ্বারা সরবরাহ করা হয়েছিল যিনি উপরে এই প্রশ্নের উত্তর দিয়েছিলেন আমার প্রকল্পে কাজ করেছে, তবে দুটি উল্লেখযোগ্য বিষয় রয়েছে।

  1. তাঁর কোডের দ্বিতীয় লাইনের শুরুতে যে ভাষাটি আপনি পছন্দ করেন না তার পরিবর্তে আপনি চাইতেন সেই ভাষাটি। এটি আলাদা করতে মনে রাখবেন।

  2. দেখে মনে হচ্ছে আপনি এর আগে কোনও স্থান টাইপ করতে পারেন নি *। (উদাহরণস্বরূপ, *.swift linguist-vendored=falseযখন আমি আমার ভাষাটি দ্রুত পরিবর্তন করতে চাই তখন আমার টাইপ করা উচিত ))


1

আমারও এ নিয়ে সমস্যা আছে। আমি আমার প্রকল্পের মূল মধ্যে .gitattributes তৈরি। আমি .js এবং .cs অপসারণ করেছি, তবে .html এখনও আছে। এটি আমার .gitattributes:

*.cs linguist-detectable=true
*.js linguist-detectable=false`
*.html linguist-detectable=false
*.xml linguist-detectable=false

আমি যখন ভাষাতত্ত্ববিদ-বিক্রেতাকে যুক্ত করি তখন আমি গিটহাবের কিছুই দেখতে পাই না।

আপনার সাহায্যের জন্য ধন্যবাদ.

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

উত্তর:

এখনও একই, .html এখনও প্রদর্শিত হয়


++++++++++++++++
Дмитрий Пасько

0

আপনার প্রকল্পের মূল ফোল্ডারে .gitattributes নামে একটি ফাইল তৈরি করুন। যুক্ত করা {file_name} linguist-generated=trueকৌশলটি করতে পারে। আমার ক্ষেত্রে,

mvnw.cmd linguist-generated=true
mvnw linguist-generated=true

আমার জন্য কাজ।


0

উত্তরটি বেশ সহজ:

আপনার প্রকল্প টার্মিনালে এই লাইনগুলি যুক্ত করুন

  1. touch .gitattributes এই আদেশটি লেখার পরে এই ফাইলটি- উদাহরণস্বরূপ- পাওয়া উচিত, যদি এই ফাইলটি উপস্থিত না হয় তবে এটি সন্ধানের জন্য লুকানো ফাইলগুলি দেখানোর চেষ্টা করুন।
  2. *.* linguist-language=Java আপনার টার্গেট ল্যাঙ্গুয়েজ দিয়ে জাভা পরিবর্তন করুন-আপনার ক্ষেত্রে সুইফট-
  3. git add .
  4. git commit -m "Change Tagged language from Java to Kotlin"
  5. git push এখন গিথুব পৃষ্ঠা রিফ্রেশ করার পরে আপনার নতুন আপডেটটি পাওয়া উচিত।

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