ورود

View Full Version : سوال: کار کردن همزمان چند نفرروی یک پروژه در mvc



homa sadeghi
چهارشنبه 10 دی 1393, 09:18 صبح
سلام ما چند نفریم و داریم روی یه پروژه بطور همزمان کار میی کنیم اماکارهامون هر کدوم جدا جدا می آریم توی یه پروژه واحد کپی می کنیم
چطور می تونیم بصورت همزمان روی یک پروژه واحد کار کنیم؟؟؟؟

helpsos
چهارشنبه 10 دی 1393, 10:44 صبح
فکر کنم باید از Team Foundation Server ویژوال استودیو استفاده کنی

(کمک نمی خواین:لبخند:)

mohammadreza.najafipour
چهارشنبه 10 دی 1393, 11:30 صبح
سلام ما چند نفریم و داریم روی یه پروژه بطور همزمان کار میی کنیم اماکارهامون هر کدوم جدا جدا می آریم توی یه پروژه واحد کپی می کنیم
چطور می تونیم بصورت همزمان روی یک پروژه واحد کار کنیم؟؟؟؟
سلام.
باید از ابزارهای مدیریت سورس استفاده کنید.
سه حالت رو می تونید انتخاب کنید:
1- از SVN استفاده کنید (در حال حاضر در پروژه های خودمون استفاده می کنیم، افزونه برای ویژوال استودیو داره)
2- از Git استفاده کنید(از نسخه 2012 به بعد در ویژوال استودیو به صورت توکار تعبیه شده)
3- از Team Foundation Server خوده ویژوال استودیو استفاده کنید

در مورد حالت اول که خودمون داریم استفاده می کنیم، یک سرور رایگان از assembla.com (http://assembla.com) گرفتیم (محدودیت در تعداد کاربر داره). پروژه رو آنلاین از هر کجا بخوایم تغییر میدیم.

homa sadeghi
چهارشنبه 10 دی 1393, 12:01 عصر
سلام.
باید از ابزارهای مدیریت سورس استفاده کنید.
سه حالت رو می تونید انتخاب کنید:
1- از SVN استفاده کنید (در حال حاضر در پروژه های خودمون استفاده می کنیم، افزونه برای ویژوال استودیو داره)
2- از Git استفاده کنید(از نسخه 2012 به بعد در ویژوال استودیو به صورت توکار تعبیه شده)
3- از Team Foundation Server خوده ویژوال استودیو استفاده کنید

در مورد حالت اول که خودمون داریم استفاده می کنیم، یک سرور رایگان از assembla.com (http://assembla.com) گرفتیم (محدودیت در تعداد کاربر داره). پروژه رو آنلاین از هر کجا بخوایم تغییر میدیم.

سلام به شما
ممنون از پاسخگویی تون فقط اگر امکانش هست راهنمای استفاده از این ابزارها رو بگذارید
توضیح اینکه ما تو یه جا داریم کار میکنیم و سیستم هامون هم شبکه هست از کدوم روش استفاده بشه بهتره؟؟؟؟؟

mohammadreza.najafipour
چهارشنبه 10 دی 1393, 12:14 عصر
خواهش می کنم.
از سایت http://tortoisesvn.net ابزار مربوطه رو دانلود کنید(راهنمای نحوه ی استفاده داخل سایت هستش)
از سایت https://www.visualsvn.com/server (https://www.visualsvn.com/server/) ابزار مربوطه رو دانلود کنید. با استفاده از این ابزار، می تونید یه سرور SVN روی شبکه تون درست کنید و از Pc های دیگه با استفاده از TortoiseSVN عملیات Commit، Update و ... رو اجرا کنید تا تغییرات اصلی روی سرور اعمال بشه.

پی نوشت: برای آشنایی با نحوه ی کار و مفاهیم میتونید از گوگل استفاده کنید.

sempay_ninjutsu
چهارشنبه 10 دی 1393, 12:14 عصر
سلام به شما
ممنون از پاسخگویی تون فقط اگر امکانش هست راهنمای استفاده از این ابزارها رو بگذارید
توضیح اینکه ما تو یه جا داریم کار میکنیم و سیستم هامون هم شبکه هست از کدوم روش استفاده بشه بهتره؟؟؟؟؟
اگر بحث انلاین کار کردن باشه خوب می توانیم از همین tfs بصورت آنلاینم استفاده کنی....
یکیاز قوی ترن این نرم افزار ها همین tfs است.
فقط وقتی اینو بخای نصب کنی نیاز داری کانفیگ بکنی ..وقتی شما این نرم افزارو دانلود بکنی خودش یه هلپ کاملا روان با تصویر داره می تونی ازش استفاده بکنی.

RIG000
چهارشنبه 10 دی 1393, 16:15 عصر
svn بهتره است

mehdin69
پنج شنبه 11 دی 1393, 01:45 صبح
منم از هر دو استفاده کردم SVN رو توصیه میکنم
خیلی مرتب و تمیز هست

ali-akbarian
پنج شنبه 11 دی 1393, 08:06 صبح
سلام ;

اگر بخواهم یک کار امتحانی با SVN انجام بدم و مثلا روی لپتاپم 3 تا ویژوال استدیو باز کنم .. آیا قابلیت انجام شدن را دارد ؟

mohammadreza.najafipour
پنج شنبه 11 دی 1393, 08:49 صبح
سلام ;

اگر بخواهم یک کار امتحانی با SVN انجام بدم و مثلا روی لپتاپم 3 تا ویژوال استدیو باز کنم .. آیا قابلیت انجام شدن را دارد ؟
سلام دوست عزیز :لبخندساده:
اگه روی لپ تاپتون 3 تا ویژوال استودیو باز کنید، یعنی یک پروژه رو 3 بار باز کردید و وقتی توی یکیشون تغییر بدی روی بقیه هم اعمال میشه و نمی تونی SVN رو تست کنی.
برای تست به نظرم از Virtual Machineها استفاده کن و با هم شبکه شون کن.

ali-akbarian
پنج شنبه 11 دی 1393, 10:22 صبح
سلام دوست عزیز :لبخندساده:
اگه روی لپ تاپتون 3 تا ویژوال استودیو باز کنید، یعنی یک پروژه رو 3 بار باز کردید و وقتی توی یکیشون تغییر بدی روی بقیه هم اعمال میشه و نمی تونی SVN رو تست کنی.
برای تست به نظرم از Virtual Machineها استفاده کن و با هم شبکه شون کن.

سلام متشکرم از اینکه وقت گذاشتید و پاسخ دادید .. ببخشید من سوال های ابتدایی می کنم من تازه شروع کردم شما به بزرگواری خودت ببخش ..

یعنی اگر یه وی ام ور نصب کنم و بعد توی اون سیستم عامل ویژوال استدیو نصب کنم و این جوری که میشه دوتا پروژه جداگانه ؟
بعد SVN را باید بر روی کدام سیستم عامل نصب کنم ؟

ممنون

mohammadreza.najafipour
پنج شنبه 11 دی 1393, 11:51 صبح
خواهش می کنم :لبخندساده:
اصل قضیه همینه. فرض کن میخوای با سه نفر روی یه پروژه (مثلا طراحی سایت) کار کنی. کارها رو بین خودتون تقسیم کردید و قراره هر کسی یه قسمتی از کار رو انجام بده.
در حالت عادی، هر کسی روی کامپیوتر خودش پروژه ای داره و قسمت مربوطه رو انجام میده و بعد از تکمیل شدن اون رو به بقیه میده. در این حالت چند تا مشکل بوجود میاد:
1- ممکنه اعمال تغییرات برای بقیه با مشکل مواجه بشه.
2- زمان زیادی برای این اعمال هدر میره.
3- فرض کن 10 نفر روی این پروژه کار کنن، فاجعه میشه
4- اگه یه وقتی یه کسی کاری رو اشتباه انجام بده قابلیت بازگشت به عقب رو ندارید.

حالا برای حل این مشکل سیستم های مدیریت سورس بوجود اومدند. قضیه از این قراره که پروژه ی اصلی (فایل ها) توی یه سرور(آنلاین یا آفلاین) ذخیره شده. هر کسی یه نسخه از پروژه رو روی سیستم خودش داره. وقتی تغییراتی رو اعمال می کنی تغییرات رو در نهایت Commit می کنی و کد شما به سرور ارسال میشه. حالا دوستان شما برای اعمال تغییرات کافیه روی سیستم خودشون از دستور Update استفاده کنند که خودش تغییرات رو از سرور می گیره و روی پروژه شون اعمال می کنه.
SVN Server رو باید روی یکی از سیستم عامل هات نصب کنی، بعدش ابزار SVN مثل TortoiseSVN رو روی همه ی سیستم هات.
البته SVN و ... مزایای خیلی زیادی دارن که توی این بحث نمی گنجه. برای آشنایی بیشتر دنبال مطالب فارسی/ انگلیسی توی گوگل بگرد. مطالب خیلی زیادی پیدا میشه.

r4hgozar
شنبه 13 دی 1393, 07:34 صبح
سلام.
ممنون از بحث بسیار جالبتون.
می خواستم بدونم مزایای svn نصبت به بقیه چیه که دوستان این رو پیشنهاد میدن.
و سوال دیگه اینه که آیا میشه کاری کرد که هر یوزر به بخش خاصی از پروژه دسترسی داشته باشه و مثلا نتونه به بانک دسترسی داشته باشه و فقط بتونه رو view کار کنه؟

mohammadreza.najafipour
یک شنبه 14 دی 1393, 01:02 صبح
هر کدوم مزایا و معایبی دارند که با جستجو، مقایسه هاشون رو میشه پیدا کرد.
به نظرم بسته به نیاز و یه جورایی سلیقه ای هستش. SVN و Git فقط برای مدیریت سورس هستش اما TFS ابزارهای بیشتری داره (گزارش گیری و ... )
توی پروژه هایی که کار کردیم چون با SVN کار کردیم به شخصه راحت تر هستم باهاش. اگه بقیه دوستان هم دلیلشون رو بگن عالی میشه :لبخندساده:
بله، تا جایی که میدونم امکانش برای هر سه تاشون هست که مجوز دسترسی داد.
ویرایش: البته Git فکر کنم پیش فرض نداره
http://techblurt.com/2010/08/24/source-control-comparison-subversion-vs-tfs-vs-mercurial-vs-git/
http://stackoverflow.com/questions/2589801/what-are-the-differences-between-tfs-svn-and-git

homa sadeghi
چهارشنبه 17 دی 1393, 16:27 عصر
سلام
من svn server نصب کردم شماره پورت رو هم در اون به 8443 تغییر دادم
tortoisesvn repository رو هم نصب کردم
روی پوشه پروجگت و راست کلیلک و checkout کردم روی کلاینت هم tortoisesvn repository رو هم نصب کردم اما دیگه نمی دونم برای اعمال تغییر از سمت کاربران چطور عمل کنم
توضیح اینکه پوشه پروژه روی سرور هست آیا لازم فایلهای پروژه رو روی تک تک کلاینت ها هم کپی کنم؟؟؟؟

mohammadreza.najafipour
پنج شنبه 18 دی 1393, 01:08 صبح
سلام.
نیازی به کپی نیست. روی کلاینت ها، توی یه پوشه ی دلخواه Checkout کنید و آدرس Repository روی سرور رو وارد کنید. براتون فایل رو از سرور کپی میکنه. حالا میتونید پروژه رو روی کلاینت هاتون باز کنید و تغییر بدید. برای اعمال شدن تغییرهاتون روی کلاینت، از Commit استفاده کنید. برای دریافت تغییرات دیگران از Update.
من روند کار رو دوباره می گم، با کاری که انجام دادید چک کنید(راه ها میتونه متفاوت باشه):
1. داخل ویژوال استودیو یه پروژه میسازیم.
2. روی Solution در ویژوال استودیو کلیک راست میکنیم و گزینه Add to Subversion رو انتخاب می کنیم.
3. توی فرم باز شده مراحل رو طی میکنیم و یه Repository میسازیم برای پروژمون.
4. فرم که بسته شد، روی Solution کلیک راست می کنیم و گزینه Commit رو انتخاب میکنیم، توی فرم باز شده Ok رو کلیک می کنیم تا فایل هامون به Repository اضافه بشه.
5. حالا روی کلاینت ها، توی پوشه ی دلخواه کلیک راست می کنیم و Checkout رو انتخاب میکنیم.
6. توی فرم بازشده، آدرس Repository توی سرور رو وارد می کنیم و Ok میکنیم تا فایل های پروژه از سرور کپی بشه.
7. حالا به پوشه ی trunk میریم و پروژه رو اجرا میکنیم.
تبریک میگم، تموم شد :لبخندساده:

homa sadeghi
پنج شنبه 18 دی 1393, 17:14 عصر
سلام به شما آقای نجفی پور
ممنون از راهنمایی کاملتون
توی ویژوال استادیو من
Add to Subversion ندارم نمی دونم باید چیزی نصب کنم که نکردم؟؟!!!!!!!!!!!!!!

mohammadreza.najafipour
پنج شنبه 18 دی 1393, 18:19 عصر
سلام.
خواهش می کنم خانم صادقی.
حواسم نبود بگم که این گزینه وقتی میاد که توی کلاینت هم Visual SVN رو نصب کرده باشید. البته افزونه های مختلف هستند که کار با SVN رو از داخل ویژوال استودیو امکان پذیر می کنند.
خوده Visual SVN ابزار مربوطه رو داره که امکانات کار با SVN رو کامل توی ویژوال استودیو میده.
دو تا راه وجود داره:
1. روی کلاینت ها هم Visual SVN رو نصب کنید.
2. یا از این مقاله کمک بگیرید:
http://tortoisesvn.net/visualstudio.html

homa sadeghi
یک شنبه 21 دی 1393, 10:11 صبح
از همه دوستان به خصوص آقای نجفی پور ممنونم که به این تاپیک پاسخ دادن
فقط یه راهنمایی دیگه به دوستانی که مشکل من دارن و نمی تونن add to subversion تو ویژوا استادیو ببینن فایل لینک زیر دانلود و نصب کنین وبقیه مراحل را همانطوری که آقای نجفی پور توضیح دادن ادامه بدید.
https://ankhsvn.open.collab.net/servlets/ProjectDocumentView?documentID=5295&showInfo=true