Source control for developer collaboration is very important in software development team. It maintain the single version of source code even two or more developer working together. It also allows developer to work with other developer source code. Imagine that small group of reporter writing news without any control from their editor. At the end of the day they may write the same news.
Let imagine two employees access the same file at 9am by copying it from server to their PC. emp1 update the file to the server at 10am. Now come emp2 update the same file at 11am. What happen to that file? Any work that made by emp1 will be overwrite. This situation happens to my team before I introduce them source control. They face the issue where an update by one developer to the server is always overwritten by other developer without his/her awareness.
I used CVSNT as cvs server and SmartCvs as cvs client. You can get them by free for basic edition. It allows you to work with source control even with free version. You also can use WinCvs for cvs client but for me it not user friendly. SmartCvs is quite straightforward but lacking some important features like locking. If I’m not mistaken WinCvs has the locking feature. Locking is important when you don’t want other programmer touch your code while you working on it. This will greatly benefit in term of consistency.
I notice that SmartCvs is created by using Netbeans platform with Java language. It looks nice and you’ll think it was Microsoft application.
Oracle SqlDeveloper also provide versioning feature. You may want to know why database has this functionality. Developers can connect to same database, when one developer make a change, it will appear at other developer. The answer is performance issue. when you use cvs for sqldeveloper, you can work on your local database. This can reduce database server performance. developer also can do their work even database server is down/switch off. when you complete your work on local database, you can update it to the server. any new changes on server, you can make it update to your pc.
Let imagine two employees access the same file at 9am by copying it from server to their PC. emp1 update the file to the server at 10am. Now come emp2 update the same file at 11am. What happen to that file? Any work that made by emp1 will be overwrite. This situation happens to my team before I introduce them source control. They face the issue where an update by one developer to the server is always overwritten by other developer without his/her awareness.
I used CVSNT as cvs server and SmartCvs as cvs client. You can get them by free for basic edition. It allows you to work with source control even with free version. You also can use WinCvs for cvs client but for me it not user friendly. SmartCvs is quite straightforward but lacking some important features like locking. If I’m not mistaken WinCvs has the locking feature. Locking is important when you don’t want other programmer touch your code while you working on it. This will greatly benefit in term of consistency.
I notice that SmartCvs is created by using Netbeans platform with Java language. It looks nice and you’ll think it was Microsoft application.
Oracle SqlDeveloper also provide versioning feature. You may want to know why database has this functionality. Developers can connect to same database, when one developer make a change, it will appear at other developer. The answer is performance issue. when you use cvs for sqldeveloper, you can work on your local database. This can reduce database server performance. developer also can do their work even database server is down/switch off. when you complete your work on local database, you can update it to the server. any new changes on server, you can make it update to your pc.
Hi, I use source control that come together with eclipse. what difference between that and smartcvs. do i need to use smarcvs client together with cvs inside eclipse?
ReplyDeletei also dont understand what cvs server do.
it's enough for you to use eclipse cvs only. there are no difference between smartcvs and eclipse cvs. both are cvs client but smartcvs is standalone. i use smartcvs because i don't like my view on java code is disturb by cvs features if i use eclipse cvs.
ReplyDeletecvs server handle request from cvs client. request normally update from server and commit to server.