পুনরাবৃত্তভাবে পুরো ফোল্ডারটি কোনও সংগ্রহস্থলে যুক্ত করুন


250

আমি গিটহাবের মাস্টার শাখায় একটি শাখা যুক্ত করার চেষ্টা করছি এবং সেই শাখার উপরে একটি ফোল্ডার চাপছি।

শাখার ফোল্ডারের কাঠামোটি দেখে মনে হচ্ছে - সোস্যাল অ্যাপ / সোর্সকোড / ডেভ ট্রঙ্ক / সোস্যাল অ্যাপ এবং সমস্ত উত্স কোড ফাইলগুলি শেষ ফোল্ডারে রয়েছে।

আমি নিম্নলিখিত গিট কমান্ড ব্যবহার করছি:

git add *
git commit -m with the message
git push

এটি শুধুমাত্র প্রথম ফোল্ডারটি "সোশ্যাল অ্যাপ" গিটহাবের উপরে চাপছে এবং ফোল্ডারের ভিতরে থাকা সোর্সকোড ফোল্ডারটিকে উপেক্ষা করছে। আমি কিভাবে এটা ঠিক করব?


4
ফাইল আছে কোথাও? তারা এড়ানো হয় না .gitignore?
চার্লসবি

This is pushing only the first folder- গিট ফোল্ডারগুলি মোটেও দেখায় না, কেবল ফাইল। অনুগ্রহ করে প্রতিশ্রুতিটি দেখান - আপনি হয় কোনও সাবমডিউল, একটি সিমিলিংক বা অন্য কোনও কিছু যা কোনও ফোল্ডার নয়
AD7six

আমারও একই সমস্যা হচ্ছে আমি মনে করি এটি সমস্যা নয় তবে কেবল প্রত্যাশিত আচরণ। অবাক করার মতো অনেকগুলি সমাধান রয়েছে।

দ্রষ্টব্য: আপনার ফোল্ডারগুলি খালি থাকলে সেগুলি ট্র্যাক করা হয় না। তার একটি ভাল অভ্যাস খালি ডিরেক্টরি রাখার সেখানে খালি .keep ফাইল করা
ড্যুড

উত্তর:


356

.gitignoreসাব-ডিরেক্টরিটি উপেক্ষা করা হলে ফাইলটি পরীক্ষা করুন ।

তারপরে আবার চেষ্টা করুন

git add --all
git commit -am "<commit message>"
git push

4
নোট করুন যে এটিতে .gitignore এ উল্লিখিত ফাইলগুলি অন্তর্ভুক্ত থাকবে না। আমি সাধারণত হাতে ঐ যোগ করতে অথবা এই মত একটি ব্যাচ ফাইল ব্যবহার করুন: for /R %%f in (*.*) do git add --force %%f(দেখুন bitbucket.org/jeroenp/besharp.net/src/tip/Scripts/GIT/... )
Jeroen Wiert Pluimers

9
পুনরাবৃত্তভাবে ফোল্ডারের পুরো গাছের কাঠামো যুক্ত করতে, কমান্ডটি হওয়া উচিতgit add --all :/
জেসন হার্টলি

7
@ জিরোয়ানওয়েটপ্লিউমার্স git add -f -all.gitignored ফাইলগুলি যুক্ত করতে কাজ করে
অরওলোফিল

3
@ জেসন হার্টলি আপনার মন্তব্যটির একটি উত্তর হতে পারে। ধন্যবাদ!
শাটআপ মগদা

4
এটি কি কেবলমাত্র বর্তমান ফোল্ডার নয়, গিট রেপোতে সমস্ত স্টেস্টেড ফাইল যুক্ত করে না? আমি মনে করি না এটি মূল প্রশ্নটি যা জিজ্ঞাসা করছে।
টেড

31

এটি আমার পক্ষে কাজ করেছে:

git add . --force

1
অন্যান্য উত্তরগুলির জন্য ফাইল তালিকাটি কমান্ডের আর্গুমেন্ট হিসাবে গণনা করা দরকার, এটি একটি নয়, তাই এটি একটি ভাল পছন্দ।
টপকারা

3
অবশ্যই সেরা উত্তর .. একটি সম্পাদনা উল্লেখ করা উচিত যে আপনি --forceযদি প্রয়োজন অবহেলিতদের এখনও সম্মান করা চান তবে আপনার প্রয়োজন হবে না ।
গ্রাফিক রোবট

31

সেটআপ - স্থানীয় সার্ভারে স্থানীয় সংগ্রহস্থল - ক্লায়েন্ট ল্যানের মাধ্যমে স্থানীয় সার্ভারের সাথে সংযুক্ত রয়েছে

git add foldername/\\*

এটি সার্ভারে তৈরি করতে ...

git commit -m "comments..."
git push remote_server_name master

বেশিরভাগ ক্ষেত্রেই ব্যবহারকারীরা রিমোট_সার্ভার_নামকে উত্স হিসাবে নির্ধারণ করবেন ...

git remote add remote_server_name username@git_server_ip:/path/to/git_repo

9
হিসাবে ব্যর্থ fatal: pathspec 'foldername/\\*' did not match any files। হিসাবে কাজ git add foldername/\*
Tpojka

মধ্যে পার্থক্য কি git add foldername/\\*এবং git add --all?
দানিজেল

17

শীর্ষস্থানীয় ডিরেক্টরি থেকে আহ্বান করা "গিট অ্যাড *" এবং "গিট অ্যাড সোস্যাল অ্যাপ" উভয়েরই পুনরাবৃত্তভাবে সমস্ত ডিরেক্টরি যুক্ত করা উচিত।

সম্ভবত আপনার কাছে সোশ্যাল অ্যাপ / সোর্সকোড / ডেভ ট্রাঙ্ক / সোস্যাল অ্যাপে কোনও ফাইল নেই এবং এটি কারণ।

"টাচ সোশ্যাল অ্যাপ / সোর্সকোড / ডেভ ট্র্যাঙ্ক / সোস্যাল অ্যাপ / .টেম্পোরারি" (এবং .gitignore চেক করুন) কল করার চেষ্টা করুন এবং তারপরে আবার গিট অ্যাড চেষ্টা করুন।


2
আমি এটি মনে করি না, আমি গিট অ্যাড * ব্যবহার করি এবং একই সমস্যা রয়েছে।

16

আমার ক্ষেত্রে, উপ-ডিরেক্টরিতে একটি .git ফোল্ডার ছিল কারণ আমি আগে সেখানে গিট রেপো চালু করেছিলাম। আমি যখন সাব-ডিরেক্টরী যুক্ত করেছি তখন এটি কেবল কোনও অন্তর্ভুক্ত ফাইল যুক্ত না করে এটি একটি সাবপ্রজেক্ট হিসাবে যুক্ত করেছে।

আমি উপ-ডিরেক্টরি থেকে গিট সংগ্রহস্থল অপসারণ করে এবং ফোল্ডারটি পুনরায় যুক্ত করে সমস্যার সমাধান করেছি।


এটি আমার জন্য এটি সমাধান করেছে। এই
ফিক্সটি

6

আমি কেবল এটি ব্যবহার করেছি:

git add app/src/release/*

আপনাকে কেবল যুক্ত করতে ফোল্ডারটি নির্দিষ্ট করতে হবে এবং তারপরে *অভ্যন্তরীণ সমস্ত কিছু পুনরাবৃত্তভাবে যুক্ত করতে ব্যবহার করতে হবে।


5

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


5

যদি আপনি একটি ডিরেক্টরি এবং তার ভিতরে থাকা সমস্ত ফাইল পুনরাবৃত্তভাবে যুক্ত করতে চান, আপনি যে ডিরেক্টরিটি যুক্ত করতে চান সেটি যে ডিরেক্টরিতে অবস্থিত সেটিতে যান।

$ cd directory
$ git add directoryname

1
সিডি ডিরেক্টরি গিট অ্যাড *
ফ্রান্সোইস রিচার্ড

3

আমারও একই সমস্যা ছিল এবং আমার কাছে .gitignore ফাইল নেই। আমার সমস্যাটি নিম্নলিখিত উপায়ে সমাধান করা হয়েছিল। এটি সমস্ত উপ-ডিরেক্টরি এবং ফাইল নিয়েছে।

git add <directory>/*

1

এমন অনেক সময় আছে যে আমি তার ক্লায়েন্ট-সাইড প্রকল্পের সাথে আমার ওয়েব পরিষেবা উত্স কোডগুলি অন্তর্ভুক্ত করতে চাই। উভয়ের পৃথক গিট সংগ্রহস্থল রয়েছে। কমান্ডটি ব্যবহার করে আমি আসলে সমস্ত ফাইল যুক্ত করতে ব্যবহৃত হয়:

git add -A

তবে কোনও কারণে এটি কেবল ফোল্ডারটি যুক্ত করে। পরে আমি জানতে পেরেছিলাম যে সার্ভার ফাইলগুলিতেও এর .gitফোল্ডার রয়েছে যাতে কমান্ডটি কাজ করে না।

tl; dr : নিশ্চিত করুন যে .gitফোল্ডারটি আপনি মঞ্চ করতে চান তার ভিতরে কোনও ফোল্ডার নেই ।


1
আপনি .git ফোল্ডারগুলি সরাতে না চাইলে আপনি কীভাবে এটি পেতে পারেন?
রোলস

@ রোলগুলি গিট
এমআর 5

1


উইন্ডোজ মেশিনে থাকলে আপনার যে ফাইলগুলিতে ফোল্ডার রয়েছে সেটিতে নেভিগেট করুন আপনি গিট ব্যাশ শুরু করতে হবে যা থেকে আপনি একটি কমান্ড লাইন ইন্টারফেস পাবেন তারপরে এই কমান্ডগুলি ব্যবহার করুন

git init   //this initializes a .git  repository in your working directory

git remote add origin <URL_TO_YOUR_REPO.git> // this points to correct repository where files will be uploaded

git add *   // this adds all the files to the initialialized git repository

আপনি যদি মাস্টারগুলিতে মার্জ করার আগে ফাইলগুলিতে কোনও পরিবর্তন করেন তবে আপনাকে সম্পাদন করে পরিবর্তনগুলি করতে হবে

git commit -m "applied some changes to the branch"

এই চেকআউট পরে শাখা মাস্টার শাখা


কেবলমাত্র সেই উত্তরটির উত্তর দিনinit
অতুল

1

পরিস্থিতি / সমাধান 1:
আপনার Folder/ কোনও সুযোগেই ফাইলটিতে নেই Sub-folderতা নিশ্চিত করুন .gitignore


পরিস্থিতি / সমাধান 2:
ডিফল্টরূপে, git add .পুনরাবৃত্তির সাথে কাজ করে।


পরিস্থিতি / সমাধান 3:
git add --all :/ সুচারুভাবে কাজ করে, যেখানে git add .কাজ করে না (কাজ করে না)।
(@ জেসন হার্টলির মন্তব্য)


পরিস্থিতি / সমাধান 4:
আমি ব্যক্তিগতভাবে যে সমস্যার মুখোমুখি হয়েছিলাম তা হ'ল Subfolders or Files, যা একাধিকের মধ্যে সাধারণ ছিল Folders

উদাহরণ স্বরূপ:
Folder/Subfolder-L1/Subfolder-L2/...file12.txt
Folder/Subfolder-L1/Subfolder-L2/Subfolder-L3/...file123.txt
Folder/Subfolder-L1/...file1.txt

তাই Gitআমাকে যুক্ত করার পরামর্শ দিচ্ছিল git submodule, যা আমি চেষ্টা করেছি তবে ব্যথা ছিল।


পরিশেষে আমার জন্য যা কাজ করেছে তা হল:

১. git addএকটি ফাইল যা এ এর ​​শেষ প্রান্তে / স্তরে থাকে Folder
উদাহরণস্বরূপ:
git add Folder/Subfolder-L1/Subfolder-L2/Subfolder-L3/...file123.txt

2. git add --all :/এখন।
এটি খুব দ্রুত সমস্ত সংযোজন করবে Folders, Subfoldersএবং files



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