কার্যনির্বাহী গাছ এবং সূচকগুলিতে সমস্ত আপত্তিজনক পরিবর্তনগুলি ফিরিয়ে আনতে এবং সদ্য নির্মিত ফাইল এবং ফোল্ডারগুলি সরিয়ে ফেলার জন্য কি গিট কমান্ড রয়েছে?
কার্যনির্বাহী গাছ এবং সূচকগুলিতে সমস্ত আপত্তিজনক পরিবর্তনগুলি ফিরিয়ে আনতে এবং সদ্য নির্মিত ফাইল এবং ফোল্ডারগুলি সরিয়ে ফেলার জন্য কি গিট কমান্ড রয়েছে?
উত্তর:
আপনি এই দুটি কমান্ড চালাতে পারেন:
# Revert changes to modified files.
git reset --hard
# Remove all untracked files and directories.
# '-f' is force, '-d' is remove directories.
git clean -fd
git clean -i
একটি ইন্টারেক্টিভ মোড জন্য।
git merge --abort
।
আপনি যদি কেবল বর্তমান ওয়ার্কিং ডিরেক্টরিতে পরিবর্তনগুলি ফিরিয়ে নিতে চান তবে ব্যবহার করুন
git checkout -- .
এবং তার আগে, আপনি আসলে কোনও পদক্ষেপ না করেই উল্টে ফেলা হবে এমন ফাইলগুলি তালিকাভুক্ত করতে পারেন, কেবল কী ঘটবে তা যাচাই করার জন্য:
git checkout --
git reset --hard
?
কার্যকারী ডিরেক্টরিতে পরিবর্তনগুলি বাতিল করতে "গিট চেকআউট - ..." ব্যবহার করুন
git checkout -- app/views/posts/index.html.erb
অথবা
git checkout -- *
যেমন গিট স্ট্যাটাসে আনস্টেজ করা ফাইলগুলিতে করা সমস্ত পরিবর্তন সরিয়ে দেয়
modified: app/controllers/posts.rb
modified: app/views/posts/index.html.erb
git checkout -- *
পরিবর্তিত ফাইলগুলি যেখানে অবস্থিত সেই ডিরেক্টরিটিতে না থাকলে আমার পক্ষে কাজ করে না। পুরো সংগ্রহস্থল জুড়ে সমস্ত ফাইল চেকআউট করতে, আপনাকে অবশ্যই করতে হবেgit checkout -- :/
git checkout -- *
, তারারটি বর্তমান ডিরেক্টরিতে সমস্ত ফাইল এবং ডিরেক্টরি সহ শেল দ্বারা প্রতিস্থাপিত হয়। সুতরাং এটি উপ-ডিরেক্টরিতে যাওয়া উচিত। এটা আমার জন্য কাজ করে. তবে সিনট্যাক্সটি ": /" হাইলাইট করার জন্য ধন্যবাদ যা আমার মতে ক্লিনারটি পরিষ্কার করে।
একটি অপ্রয়োজনীয় উপায় হ'ল এই দুটি কমান্ড চালানো:
git stash
এটি আপনার পরিবর্তনগুলি স্ট্যাশে স্থানান্তরিত করবে, আপনাকে আবার হেডের রাজ্যে ফিরিয়ে আনবেgit stash drop
এটি শেষ কমান্ডে নির্মিত সর্বশেষ স্ট্যাশ মুছে ফেলবে।fatal: git-write-tree: error building trees Cannot save the current index state
git clean -fd
সাহায্য করেনি, নতুন ফাইলগুলি রয়ে গেছে। আমি যা করেছি তা হ'ল সম্পূর্ণ কার্যকারী গাছ মুছে ফেলা এবং তারপরে
git reset --hard
দেখুন " আমি Git মধ্যে আমার স্থানীয় পরিশ্রমী ডিরেক্টরি কিভাবে পরিষ্কার করবেন? পরামর্শ যোগ করার জন্য জন্য" -x
পরিষ্কার করার বিকল্প:
git clean -fdx
নোট -x
ফ্ল্যাগ গিট দ্বারা উপেক্ষা করা সমস্ত ফাইল সরিয়ে ফেলবে তাই সাবধানতা অবলম্বন করুন (আমি যে উত্তরে উল্লেখ করেছি সে বিষয়ে আলোচনা দেখুন)।
আমি মনে করি আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন: git reset --hard
দয়া করে মনে রাখবেন যে এখনও এমন ফাইল থাকতে পারে যা অদৃশ্য হয়ে যাবে বলে মনে হচ্ছে - সেগুলি অশিক্ষিত হতে পারে তবে গিট সম্ভবত সিআরএলএফ / এলএফ পরিবর্তনের কারণে সম্পাদিত হিসাবে চিহ্নিত হতে পারে। আপনি .gitattributes
সম্প্রতি কিছু পরিবর্তন করেছেন কিনা দেখুন ।
আমার ক্ষেত্রে আমি .gitattributes
ফাইলটিতে সিআরএলএফ সেটিংস যুক্ত করেছি এবং এর ফলে সমস্ত ফাইল "পরিবর্তিত ফাইল" তালিকায় রয়ে গেছে। .Gitattributes সেটিংস পরিবর্তন করার ফলে সেগুলি অদৃশ্য হয়ে যায়।
আপনি যদি আপনার সর্বশেষ প্রতিশ্রুতি অনুসারে অনুলিপি পরিবর্তন করতে চান (তবে এটি কেবল আপনার কার্যকরী অনুলিপিটিতে থাকে) তবে সেইগুলি করুন:
git checkout filename
git rm filename
এটি অনাবৃত হওয়ার পরে চেষ্টা করছি এবং এটি কাজ করছে না। error: pathspec 'filename' did not match any file(s) known to git.
git rm
git checkout master -- filename
কার্যত git restore
ট্রি ফাইলগুলি পুনরুদ্ধার করতে গিট 2.23 কমান্ড প্রবর্তন করেছে ।
https://git-scm.com/docs/git-restore
বর্তমান ডিরেক্টরিতে সমস্ত ফাইল পুনরুদ্ধার করতে
গিট পুনরুদ্ধার।
আপনি যদি সূচকের সংস্করণটির সাথে মেলে সমস্ত সি উত্স ফাইলগুলি পুনরুদ্ধার করতে চান তবে আপনি এটি করতে পারেন
গিট পুনরুদ্ধার '* .সি'
আপনি কেবল নিম্নলিখিত গিট কমান্ডটি ব্যবহার করতে পারেন যা আপনার ভাণ্ডারে তৈরি সমস্ত আপত্তিজনক পরিবর্তন ফিরিয়ে আনতে পারে:
git checkout .
উদাহরণ:
ABC@ABC-PC MINGW64 /c/xampp/htdocs/pod_admin (master)
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: application/controllers/Drivers.php
modified: application/views/drivers/add.php
modified: application/views/drivers/load_driver_info.php
modified: uploads/drivers/drivers.xlsx
no changes added to commit (use "git add" and/or "git commit -a")
ABC@ABC-PC MINGW64 /c/xampp/htdocs/pod_admin (master)
$ git checkout .
ABC@ABC-PC MINGW64 /c/xampp/htdocs/pod_admin (master)
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working tree clean