এটির জন্য দুটি পন্থা রয়েছে। যেখানে সম্ভব সেখানে আমি আপনার নতুন গিট ওয়ার্কিং ডিরেক্টরীর জন্য একটি পরিষ্কার ফোল্ডার দিয়ে শুরু করব এবং তারপরে আপনার জিনিসগুলির সংস্করণটি অনুলিপি করব। এটি দেখতে কিছুটা দেখতে *:
mv $dir $dir.orig
git clone $url $dir
rsync -av --delete --exclude '.git' $dir.orig/ $dir/
rm -rf $dir.orig
এই মুহুর্তে আপনার বর্তমান ওয়ার্কিং ডিরেক্টরি হিসাবে আপনার পূর্ববর্তী ওয়ার্কিং ফোল্ডারের সাথে একটি পরিষ্কার পরিচ্ছন্ন ওয়ার্কিং কপি থাকা উচিত যাতে আপনি চালনা করলে ফাইল মুছে ফেলার অন্তর্ভুক্ত কোনও পরিবর্তনই রাডারে প্রদর্শিত হবে git status ।
অন্যদিকে যদি আপনার অবশ্যই অন্যভাবে এটি করা হয় তবে আপনি এরকম কিছু দিয়ে একই ফলাফল পেতে পারেন:
cd $dir
git clone --no-checkout $url tempdir
mv tempdir/.git .
rmdir tempdir
git reset --mixed HEAD
যেভাবেই হোক, আমি প্রথমে যা করবো তা হ'ল কিছু চালানো git stash আপনার সমস্ত স্থানীয় পরিবর্তনের অনুলিপি আলাদা করে রাখার , তারপরে আপনি সেগুলি পুনরায় প্রয়োগ করতে পারেন এবং কোনটি দিয়ে প্রতিশ্রুতিবদ্ধ হতে চান তা নিয়ে কাজ করতে পারেন।
* উভয় উদাহরণই ধরে নিচ্ছে যে আপনি আপনার প্রকল্পের মূল ডিরেক্টরিতে শেলটি শুরু করবেন।