ITensor / website

Source code for the website at itensor.org
http://itensor.org
6 stars 12 forks source link

Change installation instruction for ITensor V2 and V3 #15

Closed mtfishman closed 5 years ago

mtfishman commented 5 years ago

Here are some clarifications on the preferred methods for installing ITensor V2 and V3.

The idea now is that the latest official ITensor V2 we want people to install is in the branch "v2", so we instruct people to checkout that branch. This will free up the master branch to eventually be used for something else.

Then, the instructions to try out ITensor V3 are to checkout the branch "rc3".

Once we officially release ITensor V3, we will change "rc3" to "v3", and instruct people to checkout the "v3" branch. The branch "v3" will be the latest official release with bug fixes, and then we can have a different "v3dev" branch (or just use "master") with bleeding-edge changes to ITensor V3.

Does this development plan seem reasonable?

kshyatt commented 5 years ago

This is how Julialang itself does things and it works pretty well.

mtfishman commented 5 years ago

Well if it works for Julia it can work for us :).

emstoudenmire commented 5 years ago

There's an option on Github to change what the default branch is. I tested it and it has the (nice) effect that when you do git clone https://github.com/ITensor/ITensor.git it sets you up automatically on the default branch. So I'd suggest we do the following:

(I'm opening to changing this plan, it's just for discussion purposes.)

The idea is that people would then get v2 by default when they clone, and doing git pull wouldn't change their version, which I think is good as it would surprise people by breaking their code before they're ready to switch. Of course people who clone after we change the default to v3 would start with v3 and stick with that. People who want to upgrade can upgrade by doing git checkout v3 and then git pull.

emstoudenmire commented 5 years ago

One important bonus feature of changing the Github default branch to either v2 or v3 (versus master) is that when you clone ITensor and then do git branch to see what branch you're on, you'll see either v2 or v3. That will help users to understand which version they're using, which would be great for support purposes, and so they know what documentation to look at.

mtfishman commented 5 years ago

Yes, I like that idea. I was thinking about the same thing, but wasn't sure about what the consequences of changing the default branch were for development, etc. But after our chat it seems like we can do it in a good way. Should we go ahead and change the default branch to v2 and I can update this pull request accordingly?

emstoudenmire commented 5 years ago

Yes, I'd say let's go ahead and change the default to v2. And we can be careful to keep v2 and master as the same for a while, until eventually perhaps we can move master over to v3. (Though maybe no reason to, if we prefer people to upgrade by switching to and tracking v3.)

mtfishman commented 5 years ago

I changed the default branch to 'v2' and changed the ITensor V2 installation instructions to reflect that 'git clone https://github.com/ITensor/ITensor itensor' clones the 'v2' branch by default.

emstoudenmire commented 5 years ago

Great - I added a little bit of extra text to the install instructions too