GIT in PandaRoot
Ralf Kliemt Panda Meeting I 2017
- 1
GIT in PandaRoot Ralf Kliemt Panda Meeting I 2017 1 A Small GIT - - PowerPoint PPT Presentation
GIT in PandaRoot Ralf Kliemt Panda Meeting I 2017 1 A Small GIT Tutorial Repositories pandaatfair.githost.io UserSpace PandaRootGroup Local Computer 2 A Small GIT Tutorial Repositories pandaatfair.githost.io UserSpace
2
Repositories Local Computer UserSpace PandaRootGroup pandaatfair.githost.io
3
Repositories Local Computer UserSpace PandaRootGroup pandaatfair.githost.io
mainrepo Shortcuts
...githost.io/<user>/PandaRoot.git
...githost.io/PandaRootGroup/PandaRoot.git
4
Repositories Local Computer UserSpace PandaRootGroup
5
Repositories Local Computer UserSpace PandaRootGroup fork merge req. push clone fetch + rebase
6
Repositories Local Computer UserSpace PandaRootGroup fork merge req. push clone, pull fetch + rebase Other
7
Repositories Local Computer UserSpace PandaRootGroup fork merge req. push clone fetch + rebase
1 2 3 4 1 2 3 4
Fork once on the website git clone
https://pandaatfair.githost.io/<user>/PandaRoot.git
git fetch mainrepo
don't forget to rebase
git push after rebase use git push -f Create Merge Request on website
8
Repositories Local Computer UserSpace PandaRootGroup fork merge req. push -f
after rebase
clone, pull
to sync. if necessary
clone
for Analysis only
fetch + rebase
1 2 3 4
Fork once on the website git clone
https://pandaatfair.githost.io/<user>/PandaRoot.git
git fetch mainrepo
don't forget to rebase
git push after rebase use git push -f Create Merge Request on website Shortcuts
...githost.io/<user>/PandaRoot.git
...githost.io/PandaRootGroup/PandaRoot.git
mainrepo
9
master dev Branches
10
master dev feature Branches checkout -b
11
master dev feature Branches checkout -b
12
master dev feature Branches merge (release)
this happens on mainrepo
merge
via website
checkout -b
13
master dev feature merge
via website
rebase checkout -b
Branches feature-2 merge (release)
this happens on mainrepo
14
master dev feature feature-2 checkout feature Jump Branches checkout dev checkout master checkout feature-2
15
Preparation Development Workflow
16
git config --global branch.autosetuprebase always git config --global user.name "FirsName LastName" git config --global user.email johndoe@example.com git config --global core.ignorecase false
Preparation Development Workflow Create a Fork on the Website (once) Setup git on each computer (once)
17
git config --global branch.autosetuprebase always git config --global user.name "FirsName LastName" git config --global user.email johndoe@example.com git config --global core.ignorecase false
Preparation Download Development Workflow
git clone https://pandaatfair.githost.io/<user>/PandaRoot.git git remote add mainrepo https://pandaatfair.githost.io/PandaRootGroup/PandaRoot.git
Create a Fork on the Website (once) Setup git on each computer (once)
18
git config --global branch.autosetuprebase always git config --global user.name "FirsName LastName" git config --global user.email johndoe@example.com git config --global core.ignorecase false
Preparation Download Development Workflow
git clone https://pandaatfair.githost.io/<user>/PandaRoot.git git remote add mainrepo https://pandaatfair.githost.io/PandaRootGroup/PandaRoot.git (git fetch mainrepo) git checkout -b featureXXX mainrepo/dev git push -u origin featureXXX
Create a Fork on the Website (once) Setup git on each computer (once) Create feature branch
(git fetch mainrepo) git checkout -b dev mainrepo/dev (git push -u origin dev)
Switch to dev (optional)
19
git config --global branch.autosetuprebase always git config --global user.name "FirsName LastName" git config --global user.email johndoe@example.com git config --global core.ignorecase false
Preparation Download Development Workflow
git clone https://pandaatfair.githost.io/<user>/PandaRoot.git git remote add mainrepo https://pandaatfair.githost.io/PandaRootGroup/PandaRoot.git (git fetch mainrepo) git checkout -b featureXXX mainrepo/dev git push -u origin featureXXX git fetch mainrepo git checkout featureXXX git rebase mainrepo/dev
Create a Fork on the Website (once) Setup git on each computer (once) Create feature branch Update news to feature branch
(git fetch mainrepo) git checkout -b dev mainrepo/dev (git push -u origin dev)
Switch to dev (optional)
20
git config --global branch.autosetuprebase always git config --global user.name "FirsName LastName" git config --global user.email johndoe@example.com git config --global core.ignorecase false
Preparation Download Development Workflow
git clone https://pandaatfair.githost.io/<user>/PandaRoot.git git remote add mainrepo https://pandaatfair.githost.io/PandaRootGroup/PandaRoot.git (git fetch mainrepo) git checkout -b featureXXX mainrepo/dev git push -u origin featureXXX git fetch mainrepo git checkout featureXXX git rebase mainrepo/dev
Create a Fork on the Website (once) Setup git on each computer (once) Create feature branch
git push -f origin
Update news to feature branch Upload feature branch
More details on panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRoot (git fetch mainrepo) git checkout -b dev mainrepo/dev (git push -u origin dev)
Switch to dev (optional)
22
git config --global branch.autosetuprebase always git config --global user.name "FirsName LastName" git config --global user.email johndoe@example.com git config --global core.ignorecase false
Preparation Download Development Workflow
git clone https://pandaatfair.githost.io/<user>/PandaRoot.git git remote add mainrepo https://pandaatfair.githost.io/PandaRootGroup/PandaRoot.git (git fetch mainrepo) git checkout -b featureXXX mainrepo/dev git push -u origin featureXXX git fetch mainrepo git checkout featureXXX git rebase mainrepo/dev
Create a Fork on the Website (once) Setup git on each computer (once) Create feature branch
git push -f origin
Update news to feature branch Upload feature branch
More details on panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRoot (git fetch mainrepo) git checkout -b dev mainrepo/dev (git push -u origin dev)
Switch to dev (optional)