On 11/01/2017 08:54 PM, Vincent Carey wrote:
As I plan to "fix a bug" in release version of BiocSklearn, I tried
%vjcair> git checkout remotes/upstream/RELEASE_3_6
Here is the result; what would I do to make some changes, alter DESCRIPTION
version to 1.0.1, commit and push so that the build system
has 1.0.1?
Note: checking out 'remotes/upstream/RELEASE_3_6'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b <new-branch-name>
HEAD is now at 98fabcd... bump x.y.z versions to even y prior to creation
of RELEASE_3_6 branch
Start over by getting back to master
git checkout master
then check out the release branch
git checkout RELEASE_3_6
git branch # verify -- RELEASE_3_6
git log # verify -- should see history through recent branch
edit DESCRIPTION, etc, and make a local commit
git add DESCRIPTION # etc -- add material to be committed
git commit # make the local commit, enter commit msg, etc
What your next commands are depends on how you've named the remotes. For
instance, I happened to call the remote associated with
git.bioconductor.org 'origin'
$ git remote -v
origin [email protected]:packages/BiocSklearn (fetch)
origin [email protected]:packages/BiocSklearn (push)
I guess you named the remote 'upstream'; maybe you also have a remote
'origin' associated with github.
I'll push my committed changes to bioconductor
git push origin RELEASE_3_6
change 'origin' to push to a different remote, as appropriate.
Martin
On Wed, Nov 1, 2017 at 8:19 PM, Arman Shahrisa <[email protected]>
wrote:
I found how I can create another remote with GitHub using Rstudio. How can
I merge master and GitHub?
Best regards,
Arman
From: Arman Shahrisa<mailto:[email protected]>
Sent: Thursday, November 2, 2017 03:23
To: Stephanie M. Gogarten<mailto:[email protected]>; bioc-devel<mailto:
[email protected]>
Subject: RE: [Bioc-devel] Confusion with how to maintain release/devel
files on local computer.
I cloned the package into a clean directory. Then I followed “New package
workflow” strategy. By checking Description file while switching between
branches, I can easily see the version change which is correct. If I
understand it correctly, GitHub can only contain changes I make to master
branch. If I want to push changes to GitHub as well, what should I do?
Best regards,
Arman
From: Stephanie M. Gogarten<mailto:[email protected]>
Sent: Thursday, November 2, 2017 02:19
To: Arman Shahrisa<mailto:[email protected]>
Cc: bioc-devel<mailto:[email protected]>
Subject: Re: [Bioc-devel] Confusion with how to maintain release/devel
files on local computer.
One possible point of confusion: Laurent's workflow includes maintaining
separate branches "master" and "devel", which he syncs to his own Github
repo and Bioconductor's git repo respectively. However, the
documentation on the bioc website
(https://bioconductor.org/developers/how-to/git/) assumes that you have
only one "master" branch that you push to both remotes.
On 11/1/17 2:33 PM, Laurent Gatto wrote:
On 1 November 2017 20:36, Arman Shahrisa wrote:
I'm confused with development process.
At first, I need to have a folder with accepted packaged. Then I need
to pull
origion RELEASE_3_6?
Then in another folder, I need to pull origion master?
No, it all happens in the same folder, but switching between branches
using git. Here's an example of one of my own packages. The first
command list all available branches (all, using -a, means also
remote-only branches). My current branch is noted with an *, and I also
have a feature branch called writeMSData, which also lives on GitHub
(https://github.com/lgatto/MSnbase/, but that's optional).
$ git branch -a
devel
* master
writeMSData
remotes/origin/HEAD -> origin/master
remotes/origin/centroiding
remotes/origin/fixBracketSubset
remotes/origin/issue82
remotes/origin/master
remotes/origin/orbifilter
remotes/origin/processingData
remotes/origin/removePrecMz
remotes/origin/writeMSData
remotes/upstream/RELEASE_2_10
remotes/upstream/RELEASE_2_11
remotes/upstream/RELEASE_2_12
remotes/upstream/RELEASE_2_13
remotes/upstream/RELEASE_2_14
remotes/upstream/RELEASE_2_8
remotes/upstream/RELEASE_2_9
remotes/upstream/RELEASE_3_0
remotes/upstream/RELEASE_3_1
remotes/upstream/RELEASE_3_2
remotes/upstream/RELEASE_3_3
remotes/upstream/RELEASE_3_4
remotes/upstream/RELEASE_3_5
remotes/upstream/master
As you can see (and as specified by Gabe in his earlier reply), I
haven't have pulled all Bioconductor releases. master points to GitHub's
origin/master branch, and devel points to Bioconductor's
upstream/master. As you can see above, I haven't got the latest release
references yet. I can do this with
$ git fetch --all
Fetching origin
Fetching upstream
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 6 (delta 4), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
From git.bioconductor.org:packages/MSnbase
* [new branch] RELEASE_3_6 -> upstream/RELEASE_3_6
b680678..a98138c master -> upstream/master
And now
$ git branch -a
devel
* master
writeMSData
remotes/origin/HEAD -> origin/master
remotes/origin/centroiding
remotes/origin/fixBracketSubset
remotes/origin/issue82
remotes/origin/master
remotes/origin/orbifilter
remotes/origin/processingData
remotes/origin/removePrecMz
remotes/origin/writeMSData
remotes/upstream/RELEASE_2_10
remotes/upstream/RELEASE_2_11
remotes/upstream/RELEASE_2_12
remotes/upstream/RELEASE_2_13
remotes/upstream/RELEASE_2_14
remotes/upstream/RELEASE_2_8
remotes/upstream/RELEASE_2_9
remotes/upstream/RELEASE_3_0
remotes/upstream/RELEASE_3_1
remotes/upstream/RELEASE_3_2
remotes/upstream/RELEASE_3_3
remotes/upstream/RELEASE_3_4
remotes/upstream/RELEASE_3_5
remotes/upstream/RELEASE_3_6
remotes/upstream/master
If I want to modify the development branch (i.e. Bioconductor's
upstreams/master), then I checkout devel (that's how I named it
locally), do changes and push.
$ git checkout devel
## do stuff
$ git push
Same principle for other branches.
So that by opening each folder, I know what I'm editing.
Also during push, I need to be careful about where I'm pushing changes.
Origion is bioc's git address of my package whereas master is the
package directory in GitHub?
No - I suggest you read a bit about git (GitHub is a web interface using
git) to familiarise yourself with the concepts and vocabulary.
Am I getting it correct?
Is there anywhere that contains whole the process and codes in steps?
All the setup and more details are provided in
https://github.com/bioconductor/bioc_git_transition/
in particular the FAQ and all the scenarios at the bottom
https://github.com/Bioconductor/bioc_git_transition/blob/master/doc/
faq.md
Best wishes,
Laurent
Best regards,
Arman
[[alternative HTML version deleted]]
_______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel
[[alternative HTML version deleted]]
_______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel
[[alternative HTML version deleted]]
_______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel
This email message may contain legally privileged and/or...{{dropped:2}}
_______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel