Basically we now have 2 developers for an iOS project, 2 developers for an Android project and 1 designer doing designs for both projects.
Right now, the way we exchange designs and images is through mail…so not very advanced or efficient. We’re switching to Dropbox, but I feel like we could go a step further and somehow integrate the process into Git.
For the iOS project, we are using Git, and I’m thinking that it might be a good idea to introduce the designer as well to Git. The problem is that, being a designer, it might be a bit difficult for him to understand source version control.
As the 2 iOS devs, we’ll probably be doing a lot of commits, branching, merging, but the designer will most likely only have to update images every now and then. We’d like to keep the setup as simple as possible (especially for the designer). We are using GitHub, so their OSX application might come in very handy for this.
Does anyone else have experience or best practices about how to set up the branching/merging and integrating a designer into a technical Git project? Articles, blog posts etc. are welcomed as well.
2
I wouldn’t let the designer use git. It’s plenty of complications for him that he doesn’t need. Just let him add his psd/jpg as attached files on your bug tracking system. It’s good if he uses dropbox for his own “backup”, but I clearly wouldn’t let him use Git.
Not to mention the education problem, but also because the repo is then polluted with non-code related binaries. That Git is known to suck with.
1
What you describe is a fairly common situation.
These are two typical setups I’ve used depending on the project.
-
(preferred) The designer and the developers do not share the project. The designer has his own project, doing his own commits, and the developers treat it as an external project, occasionally copying stuff from it into their own branches.
-
The designer and the developers share the same project. To keep things simple for the designer, don’t make him work with multiple branches, let him stay on a single branch always. That way his workflow is be simply:
git commit; git rebase origin; git push
In both of these setups, the designer needs to know only basic version control and it doesn’t have to get in his way. The developers can use the products delivered by the designer by updating their copy of the designer’s branch.
There might be other practical setups, workflows, I can only say that these two have been sufficient in my case.
0