26 Jun 2014 12:41 AM #1
Application merge error after GitHub pull
Architect Build tested:
framework: Ext JS 4.2.x
- ExtJS 4.2
- After pulling from GitHub (via Git-Tower), Application config is lost and changes app name to default "MyApp."
- Pull from Git after teammate pushed change to Architect project while SA is open and project is in development. No conflicts found from Git pull.
- Updated classes should present no change to the application config.
- Application config is completely lost.
- Now have two separate Application in Project Inspector.
- Forced to close SA and restart.
- Then only a single application category is found.
- Have to reconfig the properties for appName, appFolder, name, Loader, etc...
Screenshot, Project, or Video:
- not provided
Perfection as a goal is a nice idea that can point one in a specific direction. However, since "perfection" is an ever changing (evolving?) and moving target, one must admit that perfection can never be obtained...
- MacOS X 10.9.3
When in doubt, check the d4mn source code!
And here are my terms...
- I don't care if you use my source code. (Known as "Code.")
- I don't care if I get any monetary compensation.
- I do care to receive credit for Code provided. So, please keep my name in the comments for Code provided.
- Code is provided without warranty "AS-IS" and I claim absolutely no warranty nor liability to the quality, security, and run-ability on any platform.
- By using Code, you accept all risk inherit with Code regardless if Code has known and yet to be discovered bugs.
- You are welcome to change and improve the Code to best meet your needs.
- I don't care if you use the Code in a commercial or open-source project.
- You are not required to contact me prior to using the Code.
30 Jun 2014 6:15 AM #2
Can you give us some more information about what in the metadata files was changed? Did they edit something on the application node?
We'd like to reproduce and resolve it.Aaron Conran
30 Jun 2014 5:27 PM #3
I've been so busy with building new features for my project that I neglected to analyze the commit logs for this...
Here's the screenshot of Git-Tower 2.0 History at the time of the error:
スクリーンショット 2014-07-01 10.14.58.jpg
Then I looked at the next entry, it would appear that my teammate incorrectly resolved the commit conflict...
スクリーンショット 2014-07-01 10.15.11.jpg
From what I can see in the commit, two new stores were added and one model's name was changed. Since this would modify both .architect & metadata/Application files, it be different from the teammates local copy. It looks like he choose to merge with the GitHub copy rather than use his local (more up-to-date) copy.
** Is there any way for SA to ask the developer if they really want to rebuild/replace the application node due to merge detection?
I don't normally see this type of behavior, but then my teammate is relatively new to Sencha.
1 Jul 2014 8:16 AM #4
Hrm so the error was in the merge and Architect is just picking up what is on disk?
I think most would find it pretty annoying if Architect was always questioning whether or not what I just did was accurate or not.Aaron Conran
1 Jul 2014 4:42 PM #5
While I would agree, I do prefer to be notified if the changes detected would make numerous changes to the Application node. Especially if a corrupt node is detected. I'm not suggesting that SA confirm on every file change from a repo pull. (Dreamweaver does this and it is annoying.)
Perhaps a compromise:
I know that many other non-interpreted languages have well established "best practices" when it comes to CVS/SVN/Git/etc... Perhaps what we should have (if not already documented) is a section on using Git, BitBucket, etc on how to handle merges from the repository.