function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion

For SFDC Devs using Git--What's the best way to integrate with the Eclipse IDE?


After hearing about Git at Dreamforce, I looked into it and it looks great.

However, with the Eclipse IDE, everytime a dev checks out a different branch, the entire snapshot would need to be reloaded to the Cloud.   This sounds time consuming  What's the easiest way to accomplish this?






dcell, were you able to find a way to make this work? I've spent some time trying to get something workable in place with and git and haven't succeeded very well. It works fine to use git for versioning as long as I stay in one org, but as soon as I try to put people in separate dev orgs it all seems to turn into a mess. I found some recommendations on what to include in .gitignore , but it still takes hours to get a new developer org set up in such a way that I can deploy the contents of a git branch into it.

Yes, We have a stable integration of git and Eclipse. Our team (4-5 developers) each has their own org, and recently we branched for a related project so some of us now have 2 orgs that are managed by git source control. It only takes us an hour or so to get a new developer started from scratch with git/Eclipse. Once they have git installed it only takes a few minutes to replace their org with a new one. The only difficulty we have had was migrating schema changes from one developer back into other developers' sandboxes. We resolved this by keeping an outbound deployment set on our group "Dev" org. This org is where everyone deploys their changes to. If they make a schema change to the group "Dev" org, then they just add it to the outbound change set and deploy back to their server. This keeps the schema in sync, and git keeps their classes, pages, components, triggers and static resources in sync. I only use gitignore for ignoring extension types and obsolete files. My configuration with git includes cygwin, p4merge for diffs/merges, and dedicated folders for orgs. I'd be happy to answer any questions

Wow, sounds like a great system. A couple questions if you don't mind sharing:


1. Do you have any issues with package namespaces? Part of the difficulty I'm having is that we have a bunch of extension packages, which include namespaces in code, field names, etc. Have you found any good solution to this?


2. It sounds like you're not including object metadata in your eclipse projects, since you're using change sets. Do you mind sharing which items you do keep in git? Are you including anything other than classes, triggers, and pages?




Edit, adding a 3rd question:

3. It looks like the change sets feature is not available with developer orgs, what kind of orgs are you using?