আমি কীভাবে একটি একক কমান্ড ব্যবহার করে নতুন সংযুক্ত ফাইলগুলি সহ সমস্ত ফাইল মঞ্চ এবং প্রতিশ্রুতিবদ্ধ করতে পারি?
আমি কীভাবে একটি একক কমান্ড ব্যবহার করে নতুন সংযুক্ত ফাইলগুলি সহ সমস্ত ফাইল মঞ্চ এবং প্রতিশ্রুতিবদ্ধ করতে পারি?
উত্তর:
নেই
git add -A && git commit -m "Your Message"
একটি "একক আদেশ" হিসাবে গণনা?
নীচে @ দফতরের উত্তরের ভিত্তিতে সম্পাদনা করুন :
এটি হিসাবে git aliasব্যবহার করতে, ব্যবহার করুন:
git config --global alias.coa '!git add -A && git commit -m'
এবং নতুন ফাইল সহ সমস্ত ফাইলের সাথে একটি বার্তা সহ প্রতিশ্রুতিবদ্ধ:
git coa "A bunch of horrible changes"
ব্যাখ্যা ( git addডকুমেন্টেশন থেকে ):
-এ, - সমস্ত, - কোন উপেক্ষা-অপসারণ
কর্মক্ষেত্রের গাছের সাথে কেবল ফাইলের মিল রয়েছে কেবল তাই সূচিটি আপডেট করুন যেখানে সূচীতে ইতিমধ্যে কোনও প্রবেশ রয়েছে। এটি কার্যকারী গাছের সাথে তাল মিলিয়ে সূচক এন্ট্রিগুলি যুক্ত করে, সংশোধন করে এবং সরিয়ে দেয়।
<pathspec>-এ বিকল্পটি ব্যবহার করার সময় যদি কোনও দেওয়া না হয় তবে পুরো কার্যক্ষম গাছের সমস্ত ফাইল আপডেট হয়ে যায় (বর্তমান ডিরেক্টরি এবং এর উপ-ডিরেক্টরিতে আপডেট সীমাবদ্ধ করতে ব্যবহৃত গিটের পুরানো সংস্করণ)।
git add -A ; git commit -m "Your Message"
এই কমান্ডটি সমস্ত সংশোধিত ফাইল যুক্ত করে এবং প্রতিশ্রুতিবদ্ধ করবে, তবে নতুন তৈরি করা ফাইল নয় ।
git commit -am "<commit message>"
মানুষের গিট-কমিট থেকে:
-a, --all
Tell the command to automatically stage files that have been modified
and deleted, but new files you have not told Git about are not
affected.
আমি এই ফাংশনটি ব্যবহার করি:
gcaa() { git add --all && git commit -m "$*" }
আমার zsh কনফিগারেশন ফাইলে, তাই আমি কেবল এটি করতে পারি:
> gcaa This is the commit message
সমস্ত ফাইল স্বয়ংক্রিয়ভাবে মঞ্চায়ন এবং প্রতিশ্রুতিবদ্ধ।
function gcaa() { git add --all && git commit -m "$*" && git push }
gaa && gc -m "my commit"তবে এটি এত সুন্দর ... <বাশার্ক পরিবর্তন করতে ছুটে যায় ..>
সমস্ত ফাইল মঞ্চ করার ওয়ান-লাইনার ( সংশোধিত , মুছে ফেলা এবং নতুন ) এবং মন্তব্য দিয়ে প্রতিশ্রুতিবদ্ধ:
git add --all && git commit -m "comment"
http://git-scm.com/docs/git-add
http://git-scm.com/docs/git-commit
নিশ্চিত না কেন এই উত্তরগুলি কেন আমার সঠিক সমাধান বলে বিশ্বাস করি তার চারপাশে নাচছে তবে এখানে যা মূল্যবান তা আমি ব্যবহার করি তা:
git config --global alias.coa '!git add -A && git commit -m'
git coa "A bunch of horrible changes"
দ্রষ্টব্য: coaসমস্ত প্রতিশ্রুতিবদ্ধের জন্য সংক্ষিপ্ত এবং আপনার হৃদয় যা কিছু চায় তার সাথে প্রতিস্থাপন করা যেতে পারে
git aliasউপায় খুঁজছিল , বাকিটি বিরক্তিকর।
গিটে প্রতিশ্রুতিবদ্ধ হওয়া একাধিক পদক্ষেপ প্রক্রিয়া বা পরিস্থিতির উপর নির্ভর করে এক ধাপ হতে পারে।
এই পরিস্থিতিতে আপনার একাধিক ফাইল আপডেট হয়েছে এবং প্রতিশ্রুতিবদ্ধ হতে চায়:
আপনার কিছু করার আগে আপনাকে সমস্ত পরিবর্তিত ফাইল যুক্ত করতে হবে।
git add -A
অথবা
git add --all
এর পরে আপনি যুক্ত হওয়া সমস্ত ফাইল কমিট ব্যবহার করতে পারেন
git commit
এটির সাথে আপনাকে এই প্রতিশ্রুতিটির বার্তা যুক্ত করতে হবে।
আপনি যদি কেবল বর্তমান শাখায় পরিবর্তনগুলি স্ট্যাশ করার একটি "দ্রুত এবং নোংরা" উপায় চান তবে আপনি নীচের নামটি ব্যবহার করতে পারেন:
git config --global alias.temp '!git add -A && git commit -m "Temp"'
এই কমান্ডটি চালানোর পরে, আপনি কেবলমাত্র git temp"টেম্প" নামে একটি প্রতিশ্রুতিবদ্ধ হিসাবে বর্তমান শাখায় আপনার সমস্ত পরিবর্তন স্বয়ংক্রিয়ভাবে প্রতিশ্রুতিবদ্ধ করতে টাইপ করতে পারেন। তারপরে, আপনি git reset HEAD~পরে পরিবর্তনগুলি "অনমুক্ত" করতে ব্যবহার করতে পারেন যাতে আপনি সেগুলিতে কাজ চালিয়ে যেতে পারেন, বা প্রতিশ্রুতিতে git commit --amendআরও পরিবর্তন যুক্ত করতে পারেন এবং / বা এটি একটি সঠিক নাম দিতে পারেন।
আমার কনফিগারেশনে দুটি উপকরণ রয়েছে:
alias.foo=commit -a -m 'none'
alias.coa=commit -a -m
যদি আমি খুব অলস হয় তবে আমি কেবলমাত্র এর সাথে সমস্ত পরিবর্তন করব
git foo
এবং কেবল একটি দ্রুত প্রতিশ্রুতিবদ্ধ করতে
git coa "my changes are..."
কো "দাঁড়ায় সকলকে"
প্রদত্ত কমান্ডটি চালান
git add . && git commit -m "Changes Committed"
তবে এটি যদি একক কমান্ড বলে মনে হয় তবে এটি দুটি পৃথক কমান্ড একের পর এক চলমান। এখানে আমরা কেবল &&তাদের একত্রিত করতে ব্যবহৃত । এটি চলার চেয়ে আলাদা git add .এবং git commit -m "Changes Committed"আলাদাভাবে নয় not
আপনি একসাথে একাধিক কমান্ড চালাতে পারেন তবে ক্রম এখানে গুরুত্বপূর্ণ। আপনি যদি মঞ্চের সাথে সাথে দূরবর্তী সার্ভারে পরিবর্তনগুলি ঠেলাতে চান এবং প্রতিশ্রুতিবদ্ধ হন যে আপনি এটি প্রদত্ত হিসাবে করতে পারেন,
git add . && git commit -m "Changes Committed" && git push origin master
পরিবর্তে, আপনি যদি ক্রমটি পরিবর্তন করেন এবং pushপ্রথমে এটি স্থাপন করেন তবে এটি প্রথমে কার্যকর করা হবে এবং মঞ্চায়নের পরে কাঙ্ক্ষিত ধাক্কা দেয় না এবং কেবল আগে থেকেই এটি চালিত হওয়ার কারণে প্রতিশ্রুতি দেয়।
&&লাইনে দ্বিতীয় কমান্ড রান যখন প্রথম কমান্ড ফিরে সফলভাবে আসে, বা 0. বিপরীত একটি ত্রুটির স্তর সঙ্গে &&হয়|| , যা দ্বিতীয় কমান্ড রান যখন প্রথম কমান্ড অসফল হয়, অথবা 1 একটি ত্রুটি স্তর সঙ্গে।
বিকল্পভাবে, আপনি হিসাবে এলিজ তৈরি করতে git config --global alias.addcommit '!git add -a && git commit -m'এবং এটি হিসাবে ব্যবহার করতে পারেনgit addcommit -m "Added and commited new files"
দুর্দান্ত উত্তর, তবে আপনি যদি সজল রেখার সন্ধান করেন তবে সমস্ত কিছু করুন, আপনি উপস্থাপন করতে পারেন, উপনামটি উপভোগ করতে পারেন এবং সুবিধাটি উপভোগ করতে পারেন:
git add * && git commit -am "<commit message>"
এটি একটি একক লাইন তবে দুটি কমান্ড এবং উল্লিখিত হিসাবে আপনি এই কমান্ডগুলিকে উপনিবেশ করতে পারেন:
alias git-aac="git add * && git commit -am " (শেষে স্থানটি গুরুত্বপূর্ণ) কারণ আপনি নতুন শর্ট হ্যান্ড কমান্ডকে প্যারামিটারাইজ করতে চলেছেন।
এই মুহুর্ত থেকে, আপনি এই উপনামটি ব্যবহার করবেন:
git-acc "<commit message>"
আপনি মূলত:
গিট, আমার জন্য সমস্ত অপ্রকাশিত ফাইল যুক্ত করুন এবং এই প্রদত্ত প্রতিশ্রুতি বার্তাটি দিয়ে তাদের প্রতিশ্রুতিবদ্ধ করুন।
আশা করি আপনি লিনাক্স ব্যবহার করেন, আশা করি এটি সহায়তা করবে।
আপনি একটি ছোট স্ক্রিপ্ট লিখতে পারেন (আয়ান ক্লেল্যান্ডের উত্তর দেখুন) git-commitallযা আপনি যা করতে চান তা সম্পাদন করতে বেশ কয়েকটি গিট কমান্ড ব্যবহার করে।
এই স্ক্রিপ্টটি আপনার যে কোনও জায়গায় রাখুন $PATH। আপনি এটি দ্বারা কল করতে পারেন git commitall... খুব সহজ!
এখানে পাওয়া গেছে (প্রশ্ন এবং সমস্ত উত্তর দুর্ভাগ্যক্রমে মুছে ফেলা হয়েছে, কেবলমাত্র উচ্চ খ্যাতি সহ দৃশ্যমান)