ما هي أفضل أداة دمج مرئي لـ Git؟


Answers

يمكنك تكوين أداة الدمج الخاصة بك ليتم استخدامها مع " git mergetool ".

مثال:

  git config --global merge.tool p4merge
  git config --global mergetool.p4merge.cmd p4merge '$BASE $LOCAL $REMOTE $MERGED'
  git config --global mergetool.p4merge.trustExitCode false

وبينما أنت فيه ، يمكنك أيضًا إعداده كاختصار لـ " git difftool ":

  git config --global diff.tool p4merge
  git config --global difftool.p4merge.cmd p4merge '$LOCAL $REMOTE'

لاحظ أنه في نظام Unix / Linux لا تريد أن يتم تحليل $BASE كمتغير بواسطة shell - يجب أن يظهر بالفعل في ملف ~ / .gitconfig لكي يعمل هذا.

Question

ما هي أفضل أداة لعرض وتحرير الدمج في Git؟ أرغب في الحصول على عرض دمج ثلاثي الاتجاه ، مع "mine" ، و "theirs" ، و "سلف" في لوحات منفصلة ، ولوحة رابعة "output".

أيضًا ، ستكون تعليمات استدعاء الأداة المذكورة رائعة. (ما زلت لم أعرف كيفية بدء kdiff3 بطريقة لا تعطيني خطأ.)

بلدي نظام التشغيل هو أوبونتو.




أداة الدمج المرئي المفضلة هي SourceGear DiffMerge

  • إنه مجاني.
  • عبر النظام الأساسي (Windows و OS X و Linux).
  • واجهة مستخدم مرئية نظيفة
  • جميع الميزات المختلفة التي تتوقعها (Diff، Merge، Folder Diff).
  • واجهة خط الأوامر.
  • اختصارات لوحة المفاتيح القابلة للاستخدام.




حتى بالنسبة لدمج git ، يمكنك تجربة:

  • DiffMerge لمقارنة الملفات ودمجها بشكل مرئي على أنظمة التشغيل Windows و OS X و Linux.

  • Meld ، هي أداة الاختلافات البصرية ودمج.

  • KDiff3 ، برنامج فرق ودمج) ، الذي يقارن أو يدمج 2 أو 3 ملفات إدخال النص / dirs.
  • opendiff (جزء من أدوات Xcode على macOS) ، وهي أداة مساعدة لسطر الأوامر تقوم بتشغيل تطبيق FileMerge من Terminal لمقارنة الملفات أو الدلائل بيانياً ، بما في ذلك merging .






Diffuse هو المفضل لدي ولكن بالطبع انا متحيز. :-) سهل الاستخدام للغاية:

$ diffuse "mine" "output" "theirs"

Diffuse هو أداة دمج نص صغيرة وبسيطة مكتوبة في بايثون. باستخدام Diffuse ، يمكنك بسهولة دمج التغييرات وتعديلها ومراجعتها في شفرتك. Diffuse هو برنامج مجاني.




vimdiff

بمجرد أن تكون قد تعلمت vim (و IMHO يجب عليك) ، vimdiff هو مجرد مفهوم واحد أكثر جمالا متعامد للتعلم. للحصول على المساعدة عبر الإنترنت في vim:

:help vimdiff

إذا كنت عالقًا في العصور المظلمة لاستخدام الماوس ، ولم تكن الملفات التي تقوم بدمجها كبيرة جدًا ، أوصي بدمجها.




لقد جربت الكثير من الأدوات المذكورة هنا ولم يكن أي منها ما كنت أبحث عنه.

شخصيا ، لقد وجدت Atom ليكون أداة عظيمة لتصور الخلافات وحل النزاعات / دمج.

بالنسبة إلى الدمج ، لا توجد ثلاث طرق مشاهدة ، ولكن يتم دمجها كلها في واحدة مع تمييز ملون لكل إصدار. يمكنك تعديل الرمز مباشرة أو وجود أزرار لاستخدام أي إصدار من ذلك المقتطف الذي تريده.

أنا لا أستعمله كمحرر أو IDE بعد الآن ، فقط للعمل مع بوابة. واجهة مستخدم نظيفة ومباشرة جدًا ، بالإضافة إلى أنها قابلة للتخصيص بدرجة كبيرة.

  • يمكنك تشغيله من سطر الأوامر وتمريره في ملف واحد تريد فتحه ، أو إضافة مجلد المشروع (git repo).

    • كما أود أن أوصي project-manager باعتباره وسيلة مريحة للغاية للتنقل بين المشاريع دون ملء عرض الشجرة الخاص بك.
  • كانت المشكلة الوحيدة التي واجهتها هي التحديث - عندما يكون العمل مع ذرات المستودعات الكبيرة بطيئًا في تحديث التغييرات التي تجريها خارجها. أغلقها دائمًا عند الانتهاء ، ثم أعد فتحها عندما أريد عرض التغييرات / الالتزام مرة أخرى. يمكنك أيضًا إعادة تحميل النافذة باستخدام ctrl + shift + f5 ، والتي لا تستغرق سوى ثانية واحدة.

وهو مجاني بالطبع.




gitx http://gitx.frim.nl/

بعض الخلل عند العمل مع مجموعات ارتكاب كبيرة ولكن كبيرة للتصفح من خلال التغييرات واختيار تغييرات مختلفة للمرحلة ومن ثم ارتكاب.




IntelliJ IDEA لديه أداة حل دمج دمج متطورة مع حل عصا سحرية ، والتي تبسط إلى حد كبير دمج:




Links