Вы должны просто переместить ветвь (указатель) на task1_work:
git branch -f task2_base task1_work
Однако , вопрос, который звучит в моей голове: почему вы храните эти база веток на первом месте?
Проблема оказалась действительно простой. Я создал NSString для хранения пути к файлу моей базы данных, используя stringByAppendingPathComponent:. Я не понял, что это будет автоматически выпущено, и поэтому я не удосужился явно сохранить его. Причина, по которой он возвращал объект другого типа, заключалась в том, что эта память использовалась повторно после автоматического освобождения строки.
Явное сохранение строки, содержащей путь к файлу базы данных, решило проблему.
Приложение - это одноэлементное приложение, которое поддерживает ссылку на делегат приложения. Вы всегда можете получить доступ к своему делегату приложения, используя:
[UIApplication sharedApplication].delegate
Вам может потребоваться привести возвращение к вашему собственному классу делегата приложения, чтобы избавиться от предупреждений. Более того, напишите аксессор, который возвращает делегату вашего приложения upcast:
#pragma mark access to app delegate etc.
+ (MyAppDelegateClass*) sharedAppDelegate; {
return (MyAppDelegateClass*)[[UIApplication sharedApplication] delegate];
}
Роджер прав, но лично я нахожу крайне странным смешивать точечный синтаксис и синтаксис скобок в одном и том же утверждении.
Если вас это тоже смущает, эквивалентный синтаксис, использующий только скобки нотация:
[[UIApplication sharedApplication] delegate];
и да, вам может потребоваться привести результат к вашему классу делегата приложения , а не к универсальному классу UIApplicationDelegate, иначе вы, скорее всего, получите несколько предупреждений компилятора.
While I don't like sticking too much into my AppDelegate, I'll often need to access it to get to other singletons in my app, which makes the method call + cast a little cumbersome. So in most of my apps, I'll define a quick macro in my global header file.
Example follows:
#define MY_DELEGATE (AppDelegate*)[[UIApplication sharedApplication] delegate]
It's a lot easier to refer to MY_DELEGATE
.