গিট টানার পরে কোড পরিবর্তনগুলি কীভাবে দেখবেন?


91

আমি একটি করার পরে যে কোনও কোড পরিবর্তনগুলি পরিদর্শন করতে চাই git pull। বর্তমানে এটি আমাকে দেখায় যে কোন ফাইল পরিবর্তন হয়। কী কোড পরিবর্তন হয়েছে তা আমি কীভাবে দেখতে পারি?


পড়ুন এই
unrealsoul007

উত্তর:


100
git log --name-status -2

শেষ দুটি কমিটির পরিবর্তিত ফাইলগুলির নাম আপনাকে দেখাবে।

git log -p -2

আপনাকে নিজেরাই পরিবর্তনগুলি প্রদর্শন করবে।

আপনি টান আগে,

git fetch
git log --name-status origin/master..

ফাইলগুলির নাম সহ আপনি কী পুনরুদ্ধার করতে চলেছেন তা আপনাকে দেখাবে।


69

টানার আগে

@ ব্লু যেমন fetchএবং diffমার্জ হওয়ার আগে বলেছে তেমন পরিবর্তনগুলি পর্যালোচনা করতে পারেন :

$ git fetch
$ git diff master...origin/master

ট্রিপল পিরিয়ড নোট করুন, যার অর্থ ভাগ করে নেওয়া পিতামাতা এবং উত্স / মাস্টার (পৃথক xনীচে চিহ্নিত করা )

SP---o---o [master]
  \
   x---x [origin/master]

ঠিক এক টান পরে

একটি টানার আউটপুটে একেবারে প্রথম লাইনটি দেখতে এরকম দেখাচ্ছে:

$ git pull
Updating 37b431a..b2615b4
...

তারপরে আপনি সহজভাবে এটি করতে পারেন:

$ git diff 37b431a..b2615b4

বা অন্য যে কোনও আদেশ:

$ git log --name-status 37b431a..b2615b4

পরে

আপনি টানার পরে যদি এটি কিছুক্ষণ হয়ে গেছে এবং আপনি সর্বশেষ টানে কী পরিবর্তন আনা হয়েছে তা জানতে ইচ্ছুক হন, তবে আপনি এটি দিয়ে দেখতে পারেন:

$ git reflog | grep -A1 pull | head -2

যা টানার আগে হ্যাশটিকে টানার আগে হ্যাশটি প্রদর্শন করবে:

b2615b4 HEAD@{0}: pull : Fast-forward
37b431a HEAD@{1}: checkout: moving from v6.1 to master

তারপরে আপনি এই দুটি হ্যাশ দিয়ে একই জিনিসটি করতে পারেন:

git diff 37b431a..b2615b4

4
এটিই কেবলমাত্র একমাত্র উত্তর যা আপনাকে শেষ বারের সময় কোন ফাইলগুলি পরিবর্তন হয়েছিল তা পরীক্ষা করতে দেয় যখন আপনি মনে করেন না যে সেই সময় কতগুলি কমিট টানা হয়েছিল।
ক্রেমুয়া

24

কারণ git pullএটির জন্য একটি শর্টকাট git fetchএবং git merge, আপনি git fetchউত্স থেকে শাখাগুলি আনতে দৌড়াতে পারেন এবং তারপরে মার্জ হওয়ার আগে পার্থক্যগুলি দেখান। এটার মত:

git fetch                      # Load changes from remote server
git diff master origin/master  # Show differences
git merge origin/master        # Merge remote changes with local changes

আপনি যদি মাস্টারের চেয়ে আলাদা শাখায় চালনা করেন তবে অবশ্যই অবশ্যই উপরের কমান্ডগুলিতে শাখার নাম পরিবর্তন করা উচিত।


4
`` Git পরিবর্তন --name শুধুমাত্র মাস্টার উৎপত্তি / মাস্টার [পাথ] ``
jiacheo

10

আপনি টানা বিষয়বস্তুগুলি তত্ক্ষণাত্ পূর্ববর্তী অঙ্গীকারগুলির উত্সগুলির সাথে তুলনা করতে পারেন,

git diff branch_name@{1}

যেমন:

git diff master@{1}

উত্সগুলির সাথে তুলনার জন্য পিছনে কমিট করে,

git diff branch_name@{n}

4
এটি একটি ভাল উত্তর, তবে ব্যাখ্যাটি ভুল: "উত্সগুলির সাথে তুলনার জন্য এন কমেন্ট করে"@{n}সিনট্যাক্স আসলে মানে nthপূর্ববর্তী অবস্থানে শাখা / মাথার। উদাহরণস্বরূপ, যদি সেখানে 10 করে হয়েছে যেহেতু শেষবার যখন টান করেছিল master@{1}পূর্বে পড়ুন হবে অবস্থানে এর master, যা 10 করে পূর্বে। @{n}একারণের পরে পরিবর্তনগুলি পরীক্ষা করার জন্য এটি ব্যবহার দরকারী।
উইসবুকি

এই উত্তরটি আমি খুঁজছি!
@

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