গ্লোবাল গিট উপেক্ষা করুন


841

আমি কিছু ফাইল বিশ্বব্যাপী উপেক্ষা করার জন্য গিট সেট আপ করতে চাই।

আমি .gitignoreআমার হোম ডিরেক্টরিতে ( /Users/me/) একটি ফাইল যুক্ত করেছি এবং আমি এটিতে নিম্নলিখিত লাইনটি যুক্ত করেছি:

*.tmproj

তবে এটি এই ধরণের ফাইলগুলিকে উপেক্ষা করছে না, কোনও ধারণা আমি কী ভুল করছি?


7
আপনি গিটহাবের উপেক্ষা পরামর্শগুলি - help.github.com/articles/ignoring-files ; তাদের কাছে সাধারণ উপেক্ষা নিদর্শনগুলির একটি ভান্ডার রয়েছে
ড্রাজাস

6
আপনি স্বতন্ত্র প্রকল্পের মধ্যে একটি .gitignore ব্যবহার করে বিবেচনা করতে পারেন। অন্যথায় যদি আপনি (বা অন্য কেউ) কোনও নতুন সিস্টেমে প্রকল্পটি ক্লোন করেন তবে আপনাকে প্রতিবার বিশ্বব্যাপী বাদ দেওয়া ও কনফিগারেশনটি পুনরায় তৈরি করতে হবে।
স্টান কুর্দিজিল

25
প্রকল্পটি তৈরি করা যায় না এমন উপেক্ষা করা ফাইলগুলি প্রকল্পে থাকা উচিত it গিটিগনোর ফাইল, আপনার মেশিনের স্টাফ তৈরি করা যায় না এমন অজ্ঞাত ফাইলগুলি গ্লোবাল .gitignore (এডিটর / আইডিই টেম্প ফাইল এবং এর মতো) এ থাকা উচিত।
পাইলিনাক্স

2
পাইথন ভার্চুয়াল এনভায়রনমেন্ট ডিরেক্টরিগুলি আমার বিশ্বব্যাপী বা স্থানীয় বাদে প্রবেশের জন্য সাধারণ ব্যবহারের কেস।
স্ট্যু

10
@ পাইলিনাক্স প্রকৃতপক্ষে, প্রতি গিট- স্কেমে , ব্যক্তিগত আইডিই এবং ওয়ার্কফ্লো নির্দিষ্ট সুনির্দিষ্ট সামগ্রী রেপোতে থাকা চিহ্নবিহীন ফাইলটিতে যেতে পারে .git/info/exclude, তাই এটি অবশ্যই গ্লোবাল ফাইলটিতে যেতে হবে না। এছাড়াও, ডিফল্ট এবং স্বয়ংক্রিয় বিশ্বব্যাপী gitignore ফাইল $HOME/.config/git/ignore
একিউম্যানাস

উত্তর:


1420

core.excludesfileএই বিশ্বব্যাপী উপেক্ষা করা ফাইলটিকে নির্দেশ করতে আপনার বৈশ্বিক কনফিগারেশন ফাইলটি সেট আপ করতে হবে।

যেমন

* নিক্স বা উইন্ডোজ গিট ব্যাশ:

git config --global core.excludesfile '~/.gitignore'

উইন্ডোজ সেমিডি:

git config --global core.excludesfile "%USERPROFILE%\.gitignore"

উইন্ডোজ পাওয়ারশেল:

git config --global core.excludesfile "$Env:USERPROFILE\.gitignore"

উইন্ডোজ জন্য এটি অবস্থান সেট C:\Users\{myusername}\.gitignore। আপনি কনফিগার মানটি সঠিকভাবে যাচাই করতে পারবেন:

git config --global core.excludesfile

ফলাফলটি আপনার ব্যবহারকারীর প্রোফাইলের প্রসারিত পথ হওয়া উচিত .gitignore। নিশ্চিত করুন যে মানটিতে অপরিবর্তিত %USERPROFILE%স্ট্রিং নেই।

গুরুত্বপূর্ণ : উপরের কমান্ডগুলি কেবল গিট ব্যবহার করবে এমন উপেক্ষা করা ফাইলের অবস্থান সেট করবে। ফাইলটি এখনও সেই স্থানে ম্যানুয়ালি তৈরি করতে হবে এবং উপেক্ষা তালিকার সাথে পপুলেটে। ( মুর্গীর মন্তব্য থেকে)

আপনি কমান্ডটি সম্পর্কে https://help.github.com/articles/ignoring-files/#create-a-global-gitignore এ পড়তে পারেন


2
এতক্ষণ এটি আপনার HEADবা আপনার সূচকে না থাকলে ফাইলটি একবার ট্র্যাক করা হয়েছিল কিনা তা কোনও ত্রুটিযুক্ত হওয়া উচিত নয়। যদি আপনি আউটপুট যোগ এটা সহায়ক হতে পারে git status, git config core.excludesfileআপনার প্রশ্নের।
সিবি বেইলি

2
গ্লোবাল উপেক্ষা ফাইলের মধ্যে মন্তব্য যুক্ত করতে আমি কি #লাইনের শুরুতে ব্যবহার করতে পারি ~/.gitignore?
Dror

9
অফিসিয়াল গিট উইন্ডোজ টুলকিটের সাম্প্রতিক সংস্করণগুলি পরিবর্তে * নিক্স সিনট্যাক্স ব্যবহার করে; যদি এই লাইনটি কাজ না করে তবে পরিবর্তে * নিক্সটি চেষ্টা করে দেখুন।
অ্যান্ডি জোন্স

9
আমি %USERPROFILE%ভেরিয়েবলটি ব্যবহার করে এটি কাজ করতে সক্ষম হইনি । আমাকে * নিক্স ডিরেক্টরি বিভাজক ব্যবহার করে ফাইলের পুরো পথটি প্রবেশ করতে হয়েছিল। যেমন কোর.এক্সক্লুডসফিল সি: / ইউজার / ইউজার/.gitignore
ভিনস

21
এটি% USERPROFILE% ভেরিয়েবলের সাথে কাজ করতে পারেনি। সি: / ইউজার / {মাইউজারনেম} /। গিটিগনোর-এ লোকেশন নির্ধারণ করতে আমাকে উইন্ডোতে গিট কনফিগার - গ্লোবাল কোর.এক্সক্লুয়েডস ফাইল '~ / .gitignore' ব্যবহার করতে হয়েছিল। এছাড়াও উপরের কমান্ডটি গিটটি ব্যবহার করবে এমন উপেক্ষা করা ফাইলের অবস্থান কেবল সেট করবে। ফাইলটি এখনও সেই স্থানে ম্যানুয়ালি তৈরি করতে হবে এবং উপেক্ষা তালিকার সাথে পপুলেটে।
মিউরে

301

বিশ্বব্যাপী বাদ দেওয়া ফাইলটিকে পুনরায় কনফিগার করার আগে আপনি এই কমান্ডটি ব্যবহার করে এটি বর্তমানে কনফিগার করা হয়েছে তা পরীক্ষা করতে পারেন:

git config --get core.excludesfile

আমার ক্ষেত্রে, আমি এটি চালানোর সময় দেখলাম আমার বিশ্বব্যাপী বাদ দেওয়া ফাইলটি কনফিগার করা আছে

~ / .Gitignore_global
এবং সেখানে ইতিমধ্যে দু'টি জিনিস তালিকাভুক্ত ছিল। সুতরাং প্রদত্ত প্রশ্নের ক্ষেত্রে, এটি প্রথমে বিদ্যমান বর্জনীয় ফাইলগুলির জন্য পরীক্ষা করা এবং এটিতে নতুন ফাইলের মুখোশ যুক্ত করা বুদ্ধিমান হতে পারে।


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

237

যদিও অন্যান্য উত্তরগুলি সঠিক, তারা বিশ্বব্যাপী কনফিগার মান নির্ধারণ করছে যেখানে গ্লোবাল গিট উপেক্ষা ফাইলের জন্য একটি ডিফল্ট গিট অবস্থান রয়েছে:

* স্নো:

~/.config/git/ignore

উইন্ডোজ:

%USERPROFILE%\git\ignore

আপনাকে gitডিরেক্টরি এবং ignoreফাইল তৈরি করার দরকার হতে পারে তবে তারপরে আপনি আপনার গ্লোবাল উপেক্ষাগুলি সেই ফাইলটিতে ফেলতে পারেন এবং এটিই!

সূত্র

কোন ফাইলটিতে কোনও প্যাটার্ন স্থাপন করা হবে তা নির্ভর করে কীভাবে প্যাটার্নটি ব্যবহার করা উচিত।

...

  • প্যাটার্নস যা ব্যবহারকারী গীত সব পরিস্থিতিতে উপেক্ষা করতে চায় (যেমন, পছন্দের ব্যবহারকারীর সম্পাদক দ্বারা উত্পন্ন ব্যাকআপ বা অস্থায়ী ফাইল) সাধারণত দ্বারা নির্দিষ্ট একটি ফাইল ঢোকা core.excludesFileব্যবহারকারীর মধ্যে ~/.gitconfig। এর ডিফল্ট মান হ'ল XDG_CONFIG_HOME / গিট / উপেক্ষা করুন। যদি $ XDG_CONFIG_Home হয় সেট না হয় বা খালি হয়, পরিবর্তে $ HOME / .config / গিট / উপেক্ষা ব্যবহৃত হবে।

1
এটা অসাধারণ; আমি এই সম্পর্কে জানতাম না ... তবে এটি কি উত্পন্ন ফাইল নয়? আপনি আপডেট / পুনরায় ইনস্টল করার সময় এটি ওভাররাইট করা যেতে পারে?
ড্যানিয়েলডেস্ক

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

1
আমি সম্মত হলাম এটি গ্রহণযোগ্য উত্তর হওয়া উচিত, তবে আমি এটি কোনও সহায়তা নিবন্ধ ( help.github.com/articles/ignoring-files )
-তে খুঁজে পাইনি

1
@ অ্যাভিপ্রোগ্রামার উত্স ডকটি কীভাবে সংগঠিত হয়েছে তার পরিবর্তন প্রতিফলিত করার জন্য আমি উত্তরটি সম্পাদনা করেছি।
স্টিভ জর্জেনসেন

7
উইন্ডোতে মনে হচ্ছে পথটিও রয়েছে ~/.config/git/ignore
suriv

40

স্ক্র্যাচ থেকে গ্লোবাল গিটিগনোর তৈরি করতে:

$ cd ~
$ touch .gitignore_global
$ git config --global core.excludesfile ~/.gitignore_global
  1. প্রথম লাইন ডিরেক্টরিতে পরিবর্তন করে C:/Users/User
  2. এর পরে আপনি .gitignore_globalএক্সটেনশন সহ একটি খালি ফাইল তৈরি করেন
  3. এবং পরিশেষে বিশ্বব্যাপী সে ফাইলটিকে উপেক্ষা করুন।
  4. তারপরে আপনার এটি কোনও ধরণের নোটপ্যাড দিয়ে খুলতে হবে এবং প্রয়োজনীয় উপেক্ষা করার নিয়ম যুক্ত করা উচিত।

18

থেকে এখানে

আপনি যদি নিজের রেপোতে .gitignore নামক কোনও ফাইল তৈরি করেন তবে ফাইলগুলি প্রতিশ্রুতিবদ্ধ হওয়ার জন্য যখন তার নিয়মগুলি ব্যবহার করা হয়। নোট করুন যে গিট এই ফাইলটিকে এড়িয়ে যাওয়ার জন্য এই ফাইলটিতে কোনও নিয়ম যুক্ত হওয়ার আগেই ট্র্যাক করা একটি ফাইলকে অগ্রাহ্য করবে না। এই জাতীয় ক্ষেত্রে অবশ্যই ফাইলটি অবশ্যই অন-ট্র্যাক করা উচিত:

git rm --cached filename

এটা কি আপনার কেস?


আমি বিশ্বব্যাপী উপেক্ষা করার চেষ্টা করছি, যা ঘটছে না !!
হালকা Fuzz

লিনাক্সে মিল্ডফুজ core.excludesfileফাইলটিকে ফাইলের চেয়ে আলাদা ব্যাখ্যা করা বলে মনে হয় .gitignore। আপনি যদি একটি সম্পূর্ণ ডিরেক্টরিকে উপেক্ষা করতে চান তবে কেবল ডিরেক্টরিটির .vscode/পরিবর্তে ডিরেক্টরিটির নাম দিন.vscode/*
Aspering Dev

11

আপনি যদি ইউনিক্স সিস্টেম ব্যবহার করেন তবে আপনি দুটি কমান্ড দিয়ে আপনার সমস্যার সমাধান করতে পারেন। যেখানে প্রথম কনফিগার আরম্ভ করার জন্য এবং দ্বিতীয়টি উপেক্ষা করার জন্য একটি ফাইল দিয়ে ফাইল পরিবর্তন করে।

$ git config --global core.excludesfile ~/.gitignore
$ echo '.idea' >> ~/.gitignore

10
  1. আপনার হোম ডিরেক্টরিতে একটি .gitignore ফাইল তৈরি করুন
touch ~/.gitignore
  1. এতে ফাইল যুক্ত করুন ( ফোল্ডারগুলি স্বীকৃত নয় )

উদাহরণ

# these work
*.gz
*.tmproj
*.7z

# these won't as they are folders
.vscode/
build/

# but you can do this
.vscode/*
build/*
  1. কোনও গিটের ইতিমধ্যে বিশ্বব্যাপী গিটিগনোর রয়েছে কিনা তা পরীক্ষা করুন
git config --get core.excludesfile
  1. ফাইলটি কোথায় আছে তা বলুন
git config --global core.excludesfile '~/.gitignore'

Voila !!


"ফোল্ডারগুলি স্বীকৃত নয়" - এটি ঠিক ভুল, ফোল্ডারগুলি ঠিকঠাক কাজ করছে ...
টোবিএক্স

7

কমান্ড চালানো মনে রাখবেন

git config --global core.excludesfile '~/.gitignore'

সবেমাত্র গ্লোবাল ফাইল সেট আপ করবে, তবে তা তৈরি করবে না। উইন্ডোজের জন্য .gitconfigফাইলের জন্য আপনার ব্যবহারকারী ডিরেক্টরিটি পরীক্ষা করুন এবং এটি আপনার পছন্দগুলিতে সম্পাদনা করুন। আমার ক্ষেত্রে এটি এরকম:

[core]
  excludesfile = c:/Users/myuser/Dropbox/Apps/Git/.gitignore

3

আমি বা আমার ফাইলটিতে .tmprojঅন্তর্ভুক্ত করে কোনও ফাইল উপেক্ষা করতে সক্ষম হয়েছি । .tmproj*.tmproj/users/me/.gitignore-global

নোট করুন যে ফাইলের নাম .gitignore-globalনয় .gitignore। এটা তোলে অন্তর্ভুক্ত করে কাজ করে নি .tmprojবা *.tmprojনামক একটি ফাইলে .gitignoreমধ্যে /users/meডিরেক্টরি।


4
এটি আপনার core.excludesfileকনফিগারেশনের সাথে মিলে যাওয়ার পরে আপনার বিশ্বব্যাপী উপেক্ষা করা ফাইলটিকে কী বলে তা বিবেচ্য নয়।
সিবি বেইলি

আহ! গুড পয়েন্ট @ চার্লসবাইলি। তবে এটি লেখক যাচাই করতে চাইতে পারে be .tmprojফাইলটি উপেক্ষা না করার কারণটি ব্যবহারকারীর excludesfileনা হওয়ার কারণ হতে পারে .gitignore
শ্রী শঙ্করান

আমি অনুমান করি যে তিনি ভেবেছিলেন ব্যবহারকারী বুঝতে পারার পক্ষে যথেষ্ট স্মার্ট হবে।
ওয়ার্ল্ডএস

2

আপনি এই জন্য একটি বর্জন ফাইল তৈরি করা উচিত। পরীক্ষা করে দেখুন এই সারকথা যা প্রশংসনীয় স্ব ব্যাখ্যামূলক হয়।

আপনার প্রশ্নের যদিও, হয় আপনি ডি সূচক করার প্রয়োজন হতে পারে মোকাবেলার .tmprojফাইল (যদি আপনি ইতিমধ্যে সূচক তা জুড়েছেন) সঙ্গে git rm --cached path/to/.tmproj, অথবা git addএবং commitআপনার .gitignoreফাইল।


আমি কেবল প্রতি রেপোই নয়, বিশ্বব্যাপী এটি করার চেষ্টা করছি
মাইল্ড ফাজ

হ্যাঁ, এটিই আমি সংক্ষেপে সংযুক্ত করেছি। মূল প্রশ্নে আমি কিছুটা বিভ্রান্ত হয়ে পড়েছিলাম। তুমি কি করেছ git rm --cached?
নিক

হ্যাঁ, চেষ্টা করে মনে হয় আমি সমস্ত প্রস্তাবিত পরামর্শ অনুসরণ করেছি! আমি কী মিস করছি?
হালকা Fuzz

প্রস্তাবিত হিসাবে, আমি আপনার গিটের স্থিতি যুক্ত করব এবং প্রশ্নটিতে তথ্যগুলি অন্তর্ভুক্ত করব :)
নিক

2

লিনাক্স আমি জানালা সাব-সিস্টেম এর দ্বারা সাব-সিস্টেম রুট নেভিগেট করতে ছিল cd ~/তখন touch .gitignoreএবং তারপর সেখানে বিশ্ব gitignore কনফিগারেশন আপডেট করুন।

আমি আশা করি এটি কাউকে সাহায্য করবে


0

আপনি যদি ভিএসকোডি ব্যবহার করে থাকেন তবে আপনার পক্ষে টাস্কটি পরিচালনা করতে আপনি এই এক্সটেনশনটি পেতে পারেন। এটা আপনার কর্মক্ষেত্র প্রতিটি সময় আপনি আপনার কাজ সংরক্ষণ করুন ঘড়ি ও আপনি স্বয়ংক্রিয়ভাবে ফাইল এবং ফোল্ডার আপনি আপনার vscode settings.json উল্লেখিত উপেক্ষা করতে সাহায্য করে ignoreit (vscode সম্প্রসারণ)

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