عنوان:

‫فرق بین TFS ،SVN و GIT در چیست؟


نویسنده: وحید نصیری
تاریخ: ۱۳۹۱/۰۶/۱۳ ۱۲:۲
آدرس: www.dntips.ir


مشاهده مطلب اصلی

نظرات

  • dot_net در ۱۳۹۱/۰۶/۱۳ ۱۲:۵۱
    جناب نصیری نظر شما در این مورد چیست؟
    • وحید نصیری در ۱۳۹۱/۰۶/۱۳ ۱۲:۵۶
      من از SVN استفاده می‌کنم  و قصد تعویضش رو هم ندارم. SVN مانند Git توزیع شده نیست و ... برای کار من هم اهمیتی ندارد. سازگاری بسیار مناسبی با ویندوز دارد. برنامه Visual SVN Server و همچنین افزونه VisualSVN، کار کردن با SVN را تحت ویندوز و با VS.NET بسیار لذت بخش می‌کنند. تمام امکانات یک سورس کنترل عالی را هم دارد و من کم و کسری در آن نمی‌بینم.

      • dot_net در ۱۳۹۱/۰۶/۱۳ ۱۴:۲۰
        مهم اینه نیازها پوشش داده بشن... حالا هر چی که میخواد باشه.
        • علیرضا صالحی در ۱۳۹۱/۰۶/۱۳ ۱۶:۱۲
          من تقریبا 5 ساله که دارم از TFS و SVN استفاده می‌کنم.

          SVN به جهت هماهنگی با محیط‌های غیر از windows و visual studio کارآمد‌تر است. مثلا به راحتی می‌توانید یک فولدر را با آن کنترل کنید.
          به SQL Server هم وابسته نیست. کلا چون مایکروسافتی نیست دست شما خیلی باز تره. البته تنظیم کردن پلاگین‌ها و ابزارهای جانبی با آن بسیار زمان برتر است.

          TFS به جهت متمرکز بودن ابزارهای جانبی در آن مانند workflow و issue Traker و ... کارآمد‌تر است. به لحاظ مدیریتی من این گزینه را بیشتر می‌پسندم، چون در محیط شرکت ابزارهای جانبی آن کارایی مناسبی دارد، از زمانی هم که پلاگین eclipse آن آمده حتی پروژه‌های تحت eclipse (آندروید،جاوا،php) را هم با آن کنترل می‌کنیم.


          با توجه به این که مجموعه ابزارهای مجتمع TFS نسبت به SVN بیشتر و مدیریت آن ساده‌تر است فعلا این گزینه برای من ارجحیت دارد.
          • وحید نصیری در ۱۳۹۱/۰۶/۱۳ ۱۶:۴۶
            البته مقایسه TFS با SVN و Git و مرکوریال و امثال آن کمی زیاده روی است، چون TFS یک ابزار ALM است (Application Life-cycle Management) و مابقی فقط و فقط سورس کنترل هستند.
            اما کسانیکه مثلا با SVN کار می‌کنند یا Git، مابقی کارها رو توسط مثلا Jira که با این‌ها به خوبی یکپارچه می‌شود مدیریت می‌کنند. البته Jira فقط یک نمونه است. عده‌ای دیگر از ترکیب SVN، TeamCity و YouTrack استفاده می‌کنند و الی آخر. در این حالت دست باز‌تر است برای انتخاب.
          • مهمان در ۱۳۹۱/۰۶/۱۴ ۱۵:۱۱
            با نصب Team Foundation Productivity Power Tools می‌توانید محتویات فولدرهای گزارشات خود را خارج از Visual Studio و در محیط خود ویندوز مدیریت کنید
  • احمد احمدی در ۱۳۹۱/۰۶/۲۲ ۰:۴۵
    سلام جناب نصیری - بنده قسمتی از کتاب شما در مورد SVN رو مطالعه کردم ، همچنین مقالات دوستان در مورد Git رو هم خودم .
    چیزی که متوجه شدم اینه که اگر چند نفر قرار باشه خارج از شبکه با این سیتم‌ها کار کنند ، باید یک سرور ( یک سیستم با Static IP ) داشته باشیم ، آیا این تصور بنده صحیح است ؟

    • وحید نصیری در ۱۳۹۱/۰۶/۲۲ ۰:۵۲
      این‌ها دیگر مسایل مدیریت شبکه است. خارج از شبکه اگر منظور شما کارمندان یک شرکت هستند که قرار است به شبکه داخلی متصل شوند ...  می‌شود از V.P.N استفاده کرد (در شبکه داخلی باید این سرور تنظیم شود و بله باید برای دسترسی از بیرون IP ثابت داشته باشد). زمانیکه کارمندی با V.P.N به شبکه شرکت متصل می‌شود، جزئی از شبکه داخلی خواهد شد و بر اساس سطح دسترسی تعریف شده، به منابع داخلی شبکه منجمله سورس کنترل، دسترسی خواهد داشت.
      اگر قرار است برای عموم دنیا اینکار را انجام دهید می‌شود از یک VPS استفاده کرد با IP مشخص؛ یا حتی می‌تونید از سرویس‌هایی مانند bitbucket.org هم استفاده کنید. مهم‌ترین مزیت آن دسترسی به private repository رایگان است.
  • محبوبه محمدی در ۱۳۹۲/۰۲/۲۹ ۱۶:۳۹
    سلام.
    من مدتهاست از TFS استفاده کردم ولی به خاطر هزینه‌ی بالاش و البته اینکه  Windows Server ندارم برای این پروژه،تصمیم گرفتم از SVN استفاده کنم ولی متاسفانه نفهمیدم بعضی جاهاشو و خب تا برام حل نشه نمیتونم ازش استفاده کنم!(ebook شما رو هم خوندم و خب خیلی خوب بود)ولی هنوز بعضی چیزا برام مبهمه:
    اولا تفاوت Visual SVN و TortoiseSVN  رو نمی‌فهمم؟!آیا دو تا رابط جدا هستند و کارایی یکسانی دارند یا هر کدوم کاربری متفاوت داره؟(چون اینطوری که اینجا نوشته برای نصب VisualSVN  باید TortoiseSVNرو هم نصب کرد) دوما اینکه نمیفهمم باید SubVersion رو هم جدا نصب کنم یا همین رابط‌های کاربری گرافیگی کافی هستند؟ 
    از طرفی تا جایی که من خوندم  برای Visual Studio 2012 باید 3.0 Visual SVN  رو نصب کنم که من اینو از اینجا http://www.visualsvn.com/visualsvn/download/ دانلود میکنم ولی مثل ورژن قبلیش   محیط Visual SVN Server رو نداره،برا همی Reopsitory رو باید با استفاده از  TortoiseSVN  (همونطور که توکتاب توضیح دادید ایجاد کنم که قبلا یک جا خوندم Repository که TortoiseSVNبه صورت Local هست.برای همین نفهیمدم به چه دردی میخوره اگه Local باشه؟!
    ببخشید که اینجا گذاشتم این سوال‌ها رو چون من با سیستم وبساییتون زیاد آشنا نیستم.ممنون از اینکه خوندید و جواب میدید.
    • وحید نصیری در ۱۳۹۲/۰۲/۲۹ ۱۷:۲۱
      - راهنمای سریع نصب SVN
      و چند نکته:
      - SVN یک سرور است که البته برای اجرا نیازی به ویندوز سرور ندارد. روی ویندوز XP هم نصب می‌شود.
      - TortoiseSVN کلاینت SVN است. با استفاده از آن نیازی نیست تا فرامین کار کردن با SVN را حفظ کنید. با Windows explorer یکی می‌شود و بعد از آن در کلیک راست آن حضور خواهد داشت.
      - Visual SVN Server یک نصاب ساده کننده نصب SVN در ویندوز است. خصوصا اینکه اعتبار سنجی یکپارچه با ویندوز را هم به صورت خودکار ارائه می‌دهد.
      - Visual SVN یک افزونه است برای VS.NET جهت یکپارچه کردن آن با امکانات TortoiseSVNدرون ویژوال استودیو. یک نسخه رایگان هم به نام AnkhSVN بجای آن وجود دارد.
      • محبوبه محمدی در ۱۳۹۲/۰۲/۲۹ ۱۷:۲۵
        ممنون.