কিভাবে একক ফাইল / ডিরেক্টরি কমিট করতে


216

নিম্নলিখিত কমান্ড চেষ্টা:

git commit path/to/my/file.ext -m 'my notes'

গিট সংস্করণ 1.5.2.1 সংস্করণে একটি ত্রুটি পান:

error: pathspec '-m' did not match any file(s) known to git.
error: pathspec 'MY MESSAGE' did not match any file(s) known to git.

সিনেজ ফাইল বা ডিরেক্টরি কমিট করার জন্য এটি কি ভুল বাক্য গঠন?

উত্তর: এই আদেশে তর্কগুলি প্রত্যাশিত ছিল ...

git commit -m 'my notes' path/to/my/file.ext

আপডেট: এটি আর কঠোর নয় :)


1
আপনি কি নিশ্চিত যে আপনার সংস্করণটি সঠিক আছে? আপডেট করা হচ্ছে থেকে 1.5.2.1? 1.5.2.1 এখন 4 বছরের বেশি বয়সী।
— সিবি বেইলি

গিট আপগ্রেড করা থেকে কিছু আপনাকে নিষেধ করছে?
— অ্যাডাম ডাইমিট্রুক

বিটিডাব্লু: এটি একটি ভিএম ছিল পুরানো রেসিপি থেকে তৈরি। স্থানীয় গিট আপ টু ডেট ছিল, বুঝতে পারিনি যে এই সংস্করণটি প্রাচীন। কঠোরতা পাল্টে গেল।
— ডাবলজোশ

উত্তর:


352

আপনার যুক্তিগুলি ভুল ক্রমে রয়েছে। চেষ্টা করুন git commit -m 'my notes' path/to/my/file.ext, বা আপনি আরও সুস্পষ্ট হতে চান, যদি git commit -m 'my notes' -- path/to/my/file.ext।

ঘটনাচক্রে, গিট ভি 1.5.2.1 এর বয়স 4.5 বছর। আপনি একটি নতুন সংস্করণে আপডেট করতে চাইতে পারেন (1.7.8.3 বর্তমান প্রকাশ) release


2
আপনি একটি ভাল পর্যবেক্ষণ করুন। যাইহোক, উইন্ডোজে আকর্ষণীয়ভাবে গিট 1.7.5.1 স্বাচ্ছন্দ্যে গ্রহণ করেgit commit path_to_file -m 'message'
— শ্রী

@ শ্রীশঙ্করণ: মনে হয় তারা তখন আদেশের বাইরে যুক্তিগুলি সনাক্ত করতে শিখিয়েছিল। তবে ডকুমেন্টেশন অনুসারে, সঠিক ক্রমটি ফাইলের তালিকাটি সর্বশেষে রেখে দেওয়া এবং জিনিসগুলির নথিভুক্ত সংস্করণে আটকে থাকা সম্ভবত একটি ভাল ধারণা।
— লিলি ব্যালার্ড

ধন্যবাদ। এই বার্তাগুলির ক্রম পরিবর্তন হয়েছে ... বা কমপক্ষে আদেশের কঠোরতা বদল হয়েছে;)
— ডাবলজোশ

1
@ ডেভিডডিমাল্যান্ট: আপনার অর্থ কী?
— লিলি

1
@ihebiheb অধিকার জন্যে এখন আমি অন্য কোন অ পতাকা পরামিতি দেখতে না git commitতাই আমি উত্তর অনুমান হয় "কিছুই", কিন্তু অন্যান্য অনেক Git মধ্যে কমান্ড --(উদাহরণস্বরূপ অন্যান্য মুক্ত-আকৃতির আর্গুমেন্ট থেকে আলাদা পাথ, সঙ্গে প্রতিরোধ একটি পথ থেকে পরিবর্তে একটি সংশোধন পরিসীমা হিসাবে ব্যাখ্যা করা হচ্ছে)git log--
— লিলি


16

আপনি যদি ফোল্ডারে থাকেন তবে ফাইলটি রয়েছে

git commit -m 'my notes' ./name_of_file.ext

1
যদি আমি ইতিমধ্যে ফাইলটিতে আছি, তবে আমার কি শীর্ষস্থানীয় "./" (ডট ফরোয়ার্ড-স্ল্যাশ) দরকার? আমি কি ব্যবহার করতে পারি git commit -m "my note" name_of_file.txt?
— ক্রিস 22

@ ক্রিস 22 আমি নিশ্চিত না যে আপনি "আমি যদি আগে থেকেই ফাইলটিতে থাকি" (সম্ভবত আপনি "ডিরেক্টরিতে" বলতে চাইছেন?) বলতে চাইছেন ... ./তবে এটি কেবল সাধারণ পাথ সিনট্যাক্স, তবে হ্যাঁ, এই উদাহরণে প্রয়োজনীয় নয়।
— জোনাথন ক্রস

7

-oবিকল্পটি ব্যবহার করুন ।

git commit -o path/to/myfile -m "the message"

-o, - কেবলমাত্র নির্দিষ্ট ফাইলগুলি প্রতিশ্রুতিবদ্ধ


এই বিকল্পটি প্রয়োজনীয় নয়। আপনি যদি কোনও প্রতিশ্রুতিবদ্ধ কমান্ডে কোনও ফাইল পৃষ্ঠা অন্তর্ভুক্ত করেন তবে কেবলমাত্র সেই ফাইলগুলিই এটি প্রতিশ্রুতিবদ্ধ।
— ডাবলজোশ

আপনি যদি পরবর্তী প্যারামগুলির সাথে জগাখিচির সময় নিশ্চিত করতে চান কিনা তা জানা ভাল, উদাহরণস্বরূপ--amend
— টমাস ভার্গা

5

প্রবেশ করা কমিট বার্তার পরে পথ নির্দিষ্ট করুন, যেমন:

git commit -m "commit message" path/to/file.extention

4

উইন্ডোজ on-তে গিট ১.৯.৫ এর জন্য: "আমার নোটস" (ডাবল কোটস) এই সমস্যাটি সংশোধন করেছে। আমার ক্ষেত্রে ফাইল (গুলি) -র 'বার্তা' এর আগে বা পরে রাখা। কোন পার্থক্য নেই; একক উদ্ধৃতি ব্যবহার করা সমস্যা ছিল।

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