Bug 18335 - Switching SC branches removes project from Most Recently Opened list on welcome screen
Summary: Switching SC branches removes project from Most Recently Opened list on welco...
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: Version Control ()
Version: 4.2.x
Hardware: Macintosh Mac OS
: Normal normal
Target Milestone: master
Assignee: Marius Ungureanu
Depends on:
Reported: 2014-03-13 02:17 UTC by Joseph Hanna
Modified: 2016-03-02 00:05 UTC (History)
3 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Joseph Hanna 2014-03-13 02:17:27 UTC
Description of Problem:
I have three projects I have "starred" on the welcome screen as I am in and out of them all the time.  If I open one of them and switch out one of the available branches, the project disappears from the "Most Recently Opened" list along with it's "star" status.

Steps to reproduce the problem:
1. On the "Welcome Screen", click on the star associated with a project.
2. Switch that project to one of the available local branches.
3. Close the project and restart XS.
4. Project is now missing from the list.

Actual Results:
Project is removed from the list.

Expected Results:
The project should remain there with its "star" status (favourite)

How often does this happen? 
Every time a branch is switched out.

Additional Information:

=== Xamarin Studio ===

Version 4.2.3 (build 60)
Installation UUID: 91c8007d-5c08-419d-8255-8baafc57debc
	Mono 3.2.6 ((no/9b58377)
	GTK+ 2.24.23 theme: Raleigh
	GTK# (
	Package version: 302060000

=== Apple Developer Tools ===

Xcode 5.1 (5084)
Build 5B130a

=== Xamarin.iOS ===

Version: (Business Edition)
Hash: 58c3efa
Build date: 2014-10-03 18:02:26-0400

=== Xamarin.Android ===

Version: 4.12.1 (Business Edition)
Android SDK: /Users/joe/Library/Developer/Xamarin/android-sdk-mac_x86
	Supported Android versions:
		2.1   (API level 7)
		2.2   (API level 8)
		2.3   (API level 10)
		3.1   (API level 12)
		4.0   (API level 14)
		4.0.3 (API level 15)
Java SDK: /usr
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)

=== Xamarin.Mac ===

Xamarin.Mac: Not Installed

=== Build Information ===

Release ID: 402030060
Git revision: 30c4afc300c2a39ec5300851357ce02e49dd217e
Build date: 2014-03-05 22:09:33+0000
Xamarin addins: f8a9589b57c2bfab2ccd73c880e7ad81e3ecf044

=== Operating System ===

Mac OS X 10.9.2
Darwin Josephs-MacBook-Pro.local 13.1.0 Darwin Kernel Version 13.1.0
    Thu Jan 16 19:40:37 PST 2014
    root:xnu-2422.90.20~2/RELEASE_X86_64 x86_64
Comment 1 Ram Chandra 2014-03-13 11:27:12 UTC
I tried to reproduce this issue with the steps provided into bug description and I am able to reproduce this issue. 

Steps to reproduce
1. On "Welcome screen" , Click on the star associated with the project
2. Change the location of the project
3. Close the project
4. Restart the XS
5. Project is now missing from the list.

But as per my understanding, If we change the project location it will remove from the list which is correct.

Screencast: http://www.screencast.com/t/cstQUNgXbPA


Mac 10.7.5
Xamarin Studio : 4.2.3 (build 60)

Please let me know if  I am missing something here or could you please provide me screencast ?
Comment 2 Joseph Hanna 2014-03-13 16:10:54 UTC
Hi Ram,

Thanks for your response.  It appears that I haven't explained myself clearly.  In your screencast, you were completely moving the directory and in this case I agree with the current behaviour.  This is not the issue I am facing.

An example is an iOS project resides in /Users/joe/Projects/Test1.  This project has 3 git branches (master, Feature1, Feature2).

Whenever I switch between git branches using the following command in Terminal "git checkout Feature1" or via the XS menu: "Version Control -> Switch to branch -> Feature1", then the project is removed from the Most Recently Opened list.  

When a branch is switched, the directory location does not change, but the files on the O/S level appear to be temporarily removed and added straight back in (to the same location but they are different versions of the same files).  Thus, the solution file (*.sln) does not change locations but it is temporarily removed and re-added.

It appears that XS is watching the directory for changes so it can switch branches if an external switch was made (e.g. via Terminal).  It should be more tolerant of a branch switch and not remove the project from the Most Recently Opened list if the solution file is temporarily removed.

I hope this is clearer.  Let me know if my babel needs more clarification.

Comment 3 Joseph Hanna 2016-03-02 00:05:22 UTC
Forget this. No movement and I want to get it off my list