which is best sourcesafe system for iphone xcode on backup and proper check-in & check-out on codes
Regards,
sathish
it appears that you're using 'sourcesafe' as a generic term for version control.
for version control of xcode projects:
i have used cvs, subversion, and now git (also serving as a front-end for other systems).
git is my first choice (it is distributed, and quite fast).
svn (subversion) is my second choice - you may have more coworkers/projects which prefer svn, although git may also be used as a svn client.
lastly - i prefer using dedicated visual clients over xcode... xcode seems to be busy doing other things. it is usually faster to disable vc in xcode, and hop to a terminal or other client while xcode builds/debugs/updates indexes, etc.
XCode supports CVS, Perforce and SVN out of the box. Out of the three, I think SVN is the most popular choice.
Setup your project.
Delete the build folder.
Setup repository.
Import project to repo.
Checkout project from repo so you'll get a versioned copy.
Well, first - it is not called sourcesafe system, but version control - way of controlling evolution of source code and its versioning. Sourcesafe is a specific product by Microsoft.
Second - version control is data agnostic. That means you can use any system you know. The best tool is the one you know well.
That being said, there are some advantages in using specific version control systems as Subversion and Git, because those two are going to be supported in next version of Xcode (version 4).
Current Xcode (version 3) has support for Subversion, CVS and Perforce. If you are familiar with any of these, use them, but do not restrict yourself only to these. Stability of version control support in Xcode 3 is mediocre, at least with Subversion which I've used. Xcode 4 is going to be a huge improvement in this area.
Lots of developers, me included, prefer not to use integrated support for version control in Xcode (or any other developer tools), but use specific clients - like Versions for Subversion, or command-line tools for Git.
I want to comment on use of Git, which I personally use and love. It is a distributed system, and for beginners its concepts might be a bit hard to grasp. Consider the experience of your teammates when deciding to use it - for lots of teams it's better to use something more traditional like Subversion.
SmartCVS is also one of good tool which we use for co working with teammates
Related
I am doing a project in my spare time, and I need version control. Mainly I need some kind of sync that keeps remote / local files synced up since I make changes both on the server and locally.
Environment is Windows 8, 64bit, main dev tool is Dreamweaver, and the servers are on the host at the moment (although I am thinking for setting up a local db and server).
I don't want anything fancy, or complicated and only this very basic functionality is needed. Just for it to keep track of whether the server version and the local version is most recent, possible warn me if I am about to make a version control mistake.
You say that you need "some kind of sync that keeps remote / local files synced up" with simple workflow. Take a closer look at Apache Subversion (SVN) then; SVN is a storage and a time machine for your sources and is a great solution to organize your code and development process. Read SVNBook!
Adobe Dreamweaver supports SVN out-of-the-box, BTW. There is a good article series about using Dreamweaver with SVN:
Using Subversion with Dreamweaver CS5 – Part 1: Introducing Subversion,
Using Subversion with Adobe Dreamweaver CS5 – Part 2: Configuring Dreamweaver to use Subversion.
Is it possible to leverage eclipses built-in local history to create and save versions. I find local history very useful, but if I could restore the whole project to a previous state that would be even better. I've considered using version management, but it seems unnecessary as I am the only person working on my project. And I could really benefit from the ability to name my (local history) versions instead of having to go by date.
Thanks,
Lemiant
You're going through a lot of hassle just to avoid version control. Instead! Use a local version of subversion for all your version control needs.
You do not need to host a server. It will use the filesystem only! Use subclipse or subversive to integrate into eclipse.
A tutorial how to set it up(takes less than 5 minutes):
http://vincenthomedev.wordpress.com/2007/10/15/setup-svn-local-repository-step-by-step/
I am doing my study's final year project and would like to do a little survey here. The topic is about configuration management and version control system for an industrial product (such as a piece of software, a furniture design, a car engine or even an aeroplane design etc...)
1.) What is you field of expertise (IT, engineering, manufactuing etc..) and what is the configuration management and version control system you use (previously or now) for your work?
2.) What is your opinion/comment (good, bad, what is it lack of or what can be improve etc...) about them? Much appreciated if you can include some real life examples for your opinion/comment.
Of course you are welcome also if you simply wish to share your thought on the current configuration management and version control system in market.
Thanks all in advance for your help.
I'm in the Computer Security field, and we use Perforce. It's pretty good for my needs (I'm a Development Manager) - supports easy branching (not as easy as git, but we don't really need something that flexible), the conflict resolution is pretty good, and the command-line tool lends itself to easy scripting.
The downside is the price - from what I hear, P4 is rather pricey (I'm not involved in purchasing, so I don't know the specifics), and I don't think we're getting anything out of perforce that couldn't be found in an open-source solution (again, I look at git). However, we're a large (>1000 person) software development company, we have offices scattered across the world, and perforce is quite entrenched already, so I don't think we'll be switching any time soon.
In the past, I've used Perforce at a different company and Visual Source Safe (awful!).
I'm not sure this is a good topic for SO... In any case:
For developing software we're very happy with git. If your developers are particularly inexperienced or you have "people who need graphical user interfaces" on your team you might be happier with Subversion.
For tracking our system configuration files (DNS, puppet, nagios, that sort of thing) we use Subversion.
About tracking configuration files with version control system: that is not what VCS are for, but for example for Git there are many tools built on top of Git to manage configuration files: IsiSetup, etckeeper, and other that can be found e.g. on http://git.or.cz/gitwiki/InterfacesFrontendsAndTools web page.
This question might extend to less technical focused, semantic markup and generative designs.
Software and Systems Technologies:
[D]VCS'es
Git is, by far, the most popular DVCS in open source these days. [Thanks Linus!]
Mercurial [Hg] is functionally almost identical to Git due to history.
Bazaar [bzr] is another DVCS similar to Git and Mercurial.
Subversion [SVN] is a CVS common in small-to-large businesses.
Perforce [P4] and ClearCase are common is giant, traditional organizations.
Fossil is for the "ultra-cool" startup daring to be different.
Older VCS'es
CVS [not to be confused with CVSNT] is a predecessor to SVN.
RCS is the non-networked predecessor to CVS.
System Configuration Management
Cfengine 2 and 3
Puppet
Chef
MCollective
Chef knife
fabric
Software Configuration Management
Java
Ivy
Maven (mvn)
pom.xml
Python
pip
setuptools
virtualenv
C/C++
autotools
Ruby
capistrano
rake
rubygems
rvm
Haskell
cabal
Erlang
epm
Node.js
NPM
I don't know much about source control beyond what I have used at work [Perforce]. I'm looking for a product with the following..
Free
Centralized (server running on the LAN)
Good integration with Microsoft Visual Studio (built-in / free plugin?)
Good integration with Apple Xcode (built-in / free plugin?)
Are there many that fit those criteria? What would you choose?
Thank you for any input.
Xcode has built-in support for SVN, CVS and Perforce.
Visual Studio has a plug-in for most source code control systems. A free one for svn is Ankhsvn
SVN sounds like your only option. I'd question why you think you need a centralised server, though.
Well subversion is the first one which comes in mind.
Ankhsvn/visual svn for visual studio
http://developer.apple.com/tools/subversionxcode.html for xcode
I like to keep my source files on a USB drive for the portability. To date I have been using Visual SourceSafe for this purpose. What is a good alternative to VSS that fulfils these criteria:
Entire database can be held on a USB "pen" drive
Code / documentation duplicated on local drives
Does not require a central server
Easy to backup and restore using standard backup tools
Integrates with Visual Studio
Has a small footprint
Easy to clean the database and keep small
Compatible with Windows XP, Vista and Vista x64
A good reference on setup would be good too.
I would use SVN (Subversion).
You can use SVN in "file" mode (w/o using the network).
combine this with tortoiseSVN, which integrates to explorer, and you have a nice little portable repository.
For Visual Studio integration, there is the commercial($49) VisualSVN (which I believe is the setup used to develop StackOverflow).
Someone also mentioned AnkhSVN which I haven't used, but some people find it less than satisfying.
Don't use SourceSafe. There's major problems with it. See this:
Article1
Article2
I'd recommend using SubVersion instead.
If you're using Windows, you can use TortoiseSVN.
If you're working on Linux or other Unix variants, try RapidSVN.
Use Subversion. The FSFS style repository will work best as older BDB ones can have issues when moved from computer to computer. With AnkhSVN you'll have full integration with Visual Studio (AnkhSVN 2.x is a source control plugin; older versions still do the job, though).
Bazaar does what you're asking for (in terms of working very well standalone), and there was a 2007 Summer of Code project to build a Visual Studio integration plugin which appears to have produced an at-least-partially-functional product.
Bazaar (and other distributed tools, such as Git, Mercurial, Darcs and the like) are ideal because you can have your repository stored in multiple places (ie. on your pen drive, but also copied up to a server on a regular basis), make changes in one or the other branch (let's say you leave your pen drive at home -- you can build changes against the copy on a remote server, upload them via WebDAV, SFTP, etc, and be able to seamlessly merge them into changes done locally to the pen drive; non-distributed solutions such as Subversion don't have that capability).
There are two common free front-ends Ankhsvn integrates into visual studio
and TortoiseSVN integrates with explorer ( my preference).
There is also sliksvn a self contained svn server for windows.
I'd recommend SubVersion as well - you can find a hosting provider who offers SVN for really cheap, this way your source code is always backed up and available, all you need to keep on your flash drive is SVN client...