Re: [CVS] several developers on the same project
Re: [CVS] several developers on the same project
- Subject: Re: [CVS] several developers on the same project
- From: j o a r <email@hidden>
- Date: Tue, 16 Mar 2004 15:19:48 +0100
On 2004-03-16, at 14.57, Aurilien Hugeli wrote:
> of course i have done this, thanks for the explanation about
> project.pbxproj, it is now clearer.
> But, what you explain here does not seems to work :(
> - i have added a little .txt file to the project *using XCode* (not
> the Terminal cvs add command...)
> - i commited using XCode
>
> my collegue quit XCode, relaunch it and refresh CVS Status. we *see*
> the new file name quickly appear for a second in the status bar, but
> it does not appear in its project, nor is it copied on its computer.
CVS doesn't check out new / modified files automatically - and you
should be glad that it doesn't!
You need to look at the changed files and decide if you want to update
your local copy or not.
> Second try : i decided to commit the project.pbxproj (since you
> explained it is the shared file) using XCode.
> again he quits and relaunch XCode and refresh CVS Status :
> we now have a conflict on the project.pbxproj file !!! and we can't
> resolve it AFAIK...
> is it normal ?
It depends. If you both started out with an identical project file, and
you checked in a modification, you shouldn't end up with a conflict
"C", but with a "M", indicating that the files needs to be merged. The
project file is a tricky beast though, so it's not always possible to
merge in changes, in which case you need to discard your local copy and
check out a new. This is not as dramatic as it sounds, as most of your
own customizations are confined in your user.pbxuser file, and
therefore not affected by this.
> do we need to commit the project.pbxproj file too each time we modify
> something ?
Yes, of course you need to commit it if you have modified it!
It is especially important to promptly commit shared files, and files
that are difficult to merge (because they are of an private / opaque
type), like the project files.
We have lots of developers sharing a couple of project files in our
organization. It's very easy to create conflicts if you're not careful.
Here's roughly how we usually try to perform a project file
modification to avoid conflicts:
* Check out a fresh copy of the project
* Quickly make the project modification, and nothing else
* Check that you don't have a conflict (ie. that no one else has
committed an updated version while you were working on your copy)
* Commit your copy of the project file.
>> CVS doesn't notify you when files have been added (or removed or
>> modified), you need to poll the CVS server for changes, just like when
>> you look for modifications to files.
>> If files are added / removed from the project you need to quit Xcode,
>> check out the modified project file and re-launch Xcode, before you
>> will see the changes.
> do you mean i need to "cvs checkout myProject" to see changes ? so you
> mean i MUST use the Terminalm not XCode ?
I certainly wouldn't use the CVS support in Xcode to work with the
project files. I'm not even sure that it's possible (see old threads on
that topic in the list archives, also in the projectbuilder-users
mailing list archive).
Given the state of CVS support in Xcode 1.1 I use it mostly for
comparing files between revisions using FileMerge. I sometimes commit
files via Xcode. Most of the time though, I use the Terminal. In my
opinion there is currently too many problems with CVS in Xcode for it
to be an effective tool for that purpose. This is just my opinion
though, feel free to form your own.
j o a r
[demime 0.98b removed an attachment of type application/pkcs7-signature which had a name of smime.p7s]
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.