গিট সংগ্রহস্থল ডিরেক্টরি অবস্থান পরিবর্তন করুন।


200

উইন্ডোজের জন্য গিট / গিথুব সহ, যদি আমার এই ডিরেক্টরিটি সহ একটি সংগ্রহস্থল থাকে:, C:\dir1\dir2রেপো ফাইলগুলিতে সরানোর জন্য আমাকে কী করতে হবে C:\dir1? আমি স্পষ্টতই শারীরিকভাবে ফাইলগুলি অনুলিপি এবং অনুলিপি করতে পারি, তবে গিট সাইডে আমার কী করা দরকার?

আমার এই রেপোটি গিটহাবে রয়েছে এবং আমি উইন্ডোজের জন্য গিট ব্যাশ এবং গিটহাব ব্যবহার করি।


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

উত্তর:


234

কেবলমাত্র পুরো ওয়ার্কিং ডিরেক্টরি সামগ্রী (লুকানো .gitডিরেক্টরি সহ ) অনুলিপি করুন । এটি পুরো কার্যনির্বাহী ডিরেক্টরিটিকে নতুন ডিরেক্টরিতে স্থানান্তরিত করবে এবং গিটহাবের দূরবর্তী সংগ্রহস্থলের উপর প্রভাব ফেলবে না।

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


3
তবে উইন্ডোজের জন্য গিটহাব কীভাবে স্থানীয় রেপো ট্র্যাক করবে? সেখানে কিছু কনফিগার থাকতে হবে।

3
আমি যখন উইন্ডোজে এটি করেছি এটি আমাকে একটি নতুন রেপো তৈরি করতে বাধ্য করেছিল।
472084

1
@ জিলাগল, উত্তরটি পোস্ট হওয়ার পরে তারা সম্ভবত এটি পরিবর্তন করেছে। আমি একবার দেখে নেব এবং প্রয়োজনে আমার উত্তর আপডেট করব।
ctor

2
এটি আপনাকে একটি নতুন রেপো তৈরি করতে বলবে না: যদি এটি ঘটে থাকে তবে আপনি অবশ্যই একটি গিট ফাইল (সম্ভবত কোনও লুকানো) মিস করেছেন। আমার সাথে ঘটেছিল এবং যখন আমি আবার চেষ্টা করেছি তখন আমি লক্ষ্য করেছি যে আমি কিছু মিস করেছি।
জুয়ান

1
আমি উইনে আছি আমি ফোল্ডারটি ম্যানুয়ালি নতুন স্থানে সরিয়ে নেওয়ার পরে আমি গিট জিইআইআই অ্যাপটি আবার খুললাম এবং সেখানে নিজেও প্রজেক্ট ফোল্ডারটি স্থানান্তরিত করেছি ocate এইভাবে এটি আমার পক্ষে কাজ করে।
kuncevic.dev

42

আমি প্রশ্নের ব্যাপারে নিশ্চিত নই, সুতরাং এখানে দুটি উত্তর দেওয়া হল:

আপনি যদি আপনার ভাণ্ডার সরিয়ে নিতে চান:

কেবলমাত্র পুরো সংগ্রহস্থলটি (তার .gitডিরেক্টরি সহ) অনুলিপি করুন ।

.gitকাঠামোতে কোনও নিখুঁত পাথ নেই এবং এটিকে সরানো বাধা দেওয়ার কিছুই নেই তাই সরানোর পরে আপনার কিছুই করার নেই। গিথুব-এ সমস্ত লিঙ্ক (দেখুন .git/config) আগের মতো কাজ করবে।

আপনি যদি সংগ্রহস্থলের ভিতরে ফাইলগুলি সরাতে চান:

কেবল ফাইলগুলি সরান। তারপরে তালিকাভুক্ত পরিবর্তনগুলি যুক্ত করুন git status। পরেরটি প্রয়োজনীয় commitকরবে। কোনও ফাইল নকল হবে না তা জানতে পেরে আপনি খুশি হবেন: একটি ফাইলকে গিটে সরিয়ে নেওয়া প্রায় ব্যয়বহুল।


1
তবে উইন্ডোজের জন্য গিটহাব কীভাবে স্থানীয় রেপো ট্র্যাক করবে? সেখানে কিছু কনফিগার থাকতে হবে।

@ user596075 এটি .gitডিরেক্টরিতে রয়েছে।
অরেঞ্জডগ

24

আপনি যদি ব্যবহার করে থাকেন GitHub Desktopতবে কেবল নিম্নলিখিত পদক্ষেপগুলি করুন:

  1. GitHub Desktopআপনার বর্তমান ডিরেক্টরি পথে খোলা ফাইল সহ বন্ধ করুন এবং অন্যান্য সমস্ত অ্যাপ্লিকেশন।
  2. উপরে উল্লিখিত পুরো ডিরেক্টরিটি নতুন ডিরেক্টরি অবস্থানে সরান।
  3. GitHub Desktopনীল (!) "সংগ্রহস্থল পাওয়া যায় না" আইকনটি খুলুন এবং ক্লিক করুন। তারপরে একটি কথোপকথন খোলা হবে এবং আপনি একটি "সনাক্ত করুন ..." বোতামটি দেখতে পাবেন যা একটি পপআপ খুলবে যা আপনাকে নতুন অবস্থানে নিয়ে যাওয়ার পথকে অনুমতি দেয় allowing

8

উইন্ডোজের জন্য উইকিপিডিয়ায় প্রশ্নটি জড়িত রয়েছে, যদিও ভিজ্যুয়াল স্টুডিও সরঞ্জামসমূহের জন্য গিট অনুসন্ধান করার সময়ও এটি শীর্ষ ফলাফল বলে মনে হচ্ছে (ভিএস ২০১২-তে এক্সটেনশন, ভিএস ২০১৩-তে নেটিভ সমর্থন)।

উপরোক্ত সমাধানগুলি গাইড হিসাবে ব্যবহার করে আমি নির্ধারণ করেছি যে ভিজ্যুয়াল স্টুডিও গিট সরঞ্জামগুলি স্থানীয়ভাবে সরানো রেপোগুলি (বা সমস্ত রেপোর জন্য এমনকি পুরো ডিরেক্টরি কাঠামো) তৈরি করে তোলে।

1) ভিজ্যুয়াল স্টুডিও বন্ধ করুন। 2) রেপো ফোল্ডার (গুলি) নতুন জায়গায় সরিয়ে নিন। 3) ওপেন ভিজ্যুয়াল স্টুডিও। টিম এক্সপ্লোরার খুলুন। "সংযোগ" দেখুন (উপরে প্লাগ আইকন) এ স্যুইচ করুন। ৩ ক) রেপোস এখনও যদি পুরানো পথ দেখায় তবে একটি আপডেট জোর করে রিফ্রেশ ক্লিক করুন। ৪) স্থানীয়ভাবে সরানো সরু স্থানগুলিকে আর " স্থানীয় গিট সংগ্রহস্থল " এ প্রদর্শিত হবে না। 5) অ্যাড ক্লিক করুন (নতুন বা ক্লোন নয়) এবং যোগ করতে রেপো ফোল্ডারটি নির্বাচন করুন।

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

উদাহরণ: E: \ Repos \ RepoA E: \ Repos \ RepoB E: \ Repos \ RepoC

ভিজ্যুয়াল স্টুডিও টিম এক্সপ্লোরার [অ্যাড]> "ই: \ রেপোস \"> [অ্যাড] তিনটিই স্থানীয় সংগ্রহস্থলে ফিরে আসবে।


6

যদিও পূর্ববর্তী উত্তরগুলি সমস্ত বলে মনে হচ্ছে যে আপনি কেবল ডিরেক্টরিটি সরিয়ে নিতে পারবেন এবং .git কাঠামোর কোনও নিরঙ্কুশ পথ নেই। সাইগউইনের কাছ থেকে গিট ব্যবহার করার সময় আমি এটি অসত্য বলে মনে করেছি।

যখন আমি আমার গিট রেপো স্থানান্তরিত করলাম (আসলে আমি এটিকে ব্যাকআপ থেকে পুনরুদ্ধার করেছি, তবে আমার নতুন সিস্টেমে আমার ড্রাইভের কাঠামো পরিবর্তিত হওয়ার সাথে সাথে অন্য একটি ড্রাইভেও গেছে)। আমি একটি ত্রুটি বার্তা মত পেয়েছি

fatal: Invalid path '<part_of_the_original_repo_path>': No such file or directory

আমি [গ্রাফিক] বিভাগে আমার .git / কনফিগারেশন ফাইলে গ্রেপ ব্যবহার করেছি এটি একটি ওয়ার্ক্রি ভেরিয়েবল যা আমার গিট রেপোর পরম পথ ধরে। এটি পরিবর্তন করা আমার জন্য সমস্যাটি স্থির করে।


4

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

  1. ভিজ্যুয়াল স্টুডিও বন্ধ করুন

  2. কোডটি সরান (গিট ফোল্ডার ইত্যাদি সহ)

  3. নতুন অবস্থান থেকে সমাধান ফাইলটিতে ক্লিক করুন

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


2

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

এটি আশা করা কাউকে সহায়তা করবে।


1

এটি আমার পক্ষে কার্যকর হয়নি। আমি একটি রেপো (উদাহরণস্বরূপ) সি: \ প্রজেক্ট 1 c থেকে সি: \ রেপো \ প্রজেক্ট 1 \ এবং উইন্ডোজের গিট কোনও পরিবর্তন দেখায় না।

গিটের স্থিতি একটি ত্রুটি দেখায় কারণ একটি সাবমোডিয়াল "গিট সংগ্রহস্থল নয়" এবং পুরানো পথটি দেখায়। যেমন (আইপি সুরক্ষার জন্য নাম পরিবর্তন করা হয়েছে)

মারাত্মক: গিট সংগ্রহস্থল নয়: সি: / প্রজেক্ট 1/.git/modules/subproject/subproject2 মারাত্মক: 'গিট স্ট্যাটাস - পোরস্লেইন' সাব-মডিউল সাবপ্রজেক্টে ব্যর্থ

সাবমোডুলের রেপো (মূল রেপো .git / মডিউল ডিরেক্টরিতে) সঠিক আপেক্ষিক পাথটি নির্দেশ করার জন্য আমাকে সাবমোডিয়ুলের .git ফাইলগুলি ম্যানুয়ালি সম্পাদনা করতে হয়েছিল


1

ভবিষ্যত থেকে প্রতিবেদন: এপ্রিল 2018।

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

উইন্ডোজ 10 ক্লায়েন্ট আমাকে "সনাক্ত করতে পারে না"> "সনাক্ত করুন" রুটিনের মধ্য দিয়ে যেতে বাধ্য করেছে, ক্লান্তিকর তবে ভয়ঙ্কর নয়। ভবিষ্যতের ব্যবহারের জন্য বিকল্পগুলিতে স্থানীয় "ক্লোন পথ" আপডেট করতে হবে।

যখন আমি ম্যাক ফোল্ডারগুলি একত্রীকরণ করেছি, গিথুব ক্লায়েন্ট কেবল তাদের আবার খুঁজে পেয়েছে - আমাকে কিছুই করতে হয়নি!


0

আপনার স্টোরগুলির মধ্যে প্রতিবার ক্লোন করার জন্য আপনার সংগ্রহস্থলের ডিফল্ট লোকাল পাথ সেট করার জন্য আপনাকে কেবল একবার একটি সংগ্রহস্থলটি ক্লোন করতে হবে এবং লোকালপথ: / আপনার-পাথ সেট করতে হবে, তারপরে গিথুব স্বয়ংক্রিয়ভাবে সেই পাথটিকে আপনার ডিফল্ট হিসাবে সনাক্ত করবে।


এটি আসল প্রশ্নের উত্তর বলে মনে হচ্ছে না - সম্ভবত আপনি পরিষ্কার করতে পারেন যে আপনার উত্তর ইতিমধ্যে স্বীকৃত উত্তরে কীভাবে কিছু যুক্ত করে? ধন্যবাদ।
rwp

0

আরও গিট ভিত্তিক পদ্ধতি হ'ল আপনার স্থানীয় অনুলিপিটি ব্যবহার করে অনুলিপি করতে cdবা কপি করা এবং আটকানো এবং তারপরে স্থানীয় থেকে দূরবর্তী সংগ্রহস্থলগুলিতে এই পরিবর্তনগুলি ঠেলে দেওয়া।

আপনি যদি নিজের স্থানীয় রেপো স্থিতি পরীক্ষা করার চেষ্টা করেন তবে এটি "চিহ্নবিহীন পরিবর্তনগুলি" প্রদর্শন করতে পারে যা আসলে স্থানান্তরিত ফাইল। এই পরিবর্তনগুলি জোর করে চাপতে, আপনাকে এই ফাইলগুলি / ডিরেক্টরিগুলি ব্যবহার করে মঞ্চস্থ করতে হবে

$ git add -A
#And commiting them
$ git commit -m "Relocating image demo files"
#And finally, push
$ git push -u local_repo -f HEAD:master

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

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