A good tip for developers using Git is to squash multiple commmits into one.

Why do that?

If you ever work on a task and had multiple commits because you want to be safe and track the changes while work-in-progress, your commit history will be difficult to follow.

It will be hard (and waste of time) for code reviewer, or other developers, to go through multiple commits. There will be bound to be codes that you add, then remove or edit.

Continue reading →

There are times when you have weird Xcode build errors eg. you are absolutely sure that the referenced object is in the project, yet Xcode could not find it.

Or compile errors such as Include of non-modular header inside framework module, when you know the framework works very fine.

You can try clean (Cmd + Shift + K) and build.

But the real way to clean Xcode is to delete folders in ~/Library/Developer/Xcode/DerivedData. Delete folders with your app name, and also ModuleCache. That could well save your day.