37
Git workflows for IESP

Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Git workflows for IESP

Page 2: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Outline

•  Relationships of repositories – Global view – Individual developer view

•  Developer work cycle •  Alternate, refereed model •  Initial set-up •  Handling Web2Py updates •  What else?

Page 3: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Keep it simple

Compared to Android workflow

Page 4: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

AndroidGitWorkflowh/p://source.android.com/submit‐patches/workflow

Page 5: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Relationships of repositories

Including repositories for handling Web2Py updates

Page 6: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py web2py web2py

iesp

web2py

iesp

iespetc.

Personalcomputer

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

uncommi/edchanges

Page 7: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Individual developer view

Can ignore repositories used to roll in Web2Py updates.

Page 8: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

iesp

web2py

iesp

iespetc.

Personalcomputersis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

Page 9: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Normal developer workflow

Requires a bit of trust in one another

Page 10: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

etc.

sis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

Page 11: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

web2py

etc.

Personalcomputersis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git clone ssh://[email protected]/home/git/iesp (calledfrompersonalcomputer)

Page 12: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

web2py

iespetc.

Personalcomputersis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

local uncommi*ed changes 

Page 13: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

web2py

iespetc.

Personalcomputersis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git commit (calledfrompersonalcomputer)

Page 14: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

iesp

web2py

iespetc.

Personalcomputersis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git push (calledfrompersonalcomputer)

iesp

Page 15: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2pyEtc.

web2py

iesp

web2py

iesp

iespetc.

Personalcomputersis.cs.fsu.edu

iesp.cs.fsu.edu

etc.

/home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git pull (calledfromiesp.cs.fsu.edu)

iesp

iesp

iesp

Page 16: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Initial set-up

Already done

Page 17: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

Page 18: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

/home/git/web2py.zip

download web2py.zip

Page 19: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

/home/git/web2py

unzip web2py.zip

Page 20: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py web2py web2py

Web2PydistribuAonsite

/home/git/web2py /home/git/iesp

git clone web2py iesp

sis.cs.fsu.edu

“origin”link

Page 21: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsitesis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git clone /home/git/iesp iesp.cs.fsu.edu

Page 22: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsitesis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git clone /home/git/iesp iesp.cs.fsu.edu

Etc.etc.etc.

local uncommi*ed changes 

Page 23: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Web2Py updates

Will need to be done periodically by someone

Page 24: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

Page 25: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edunewreleaseofWeb2Py

Page 26: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

download,unzip,andcopy/tar

web2py

uncommi8edchangeds

Page 27: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git commit

web2py

Page 28: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git pull

web2py web2py web2py

or git fetch git rebase

Page 29: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

web2py web2py web2py

Web2PydistribuAonsite

sis.cs.fsu.edu

iesp.cs.fsu.edu

/home/git/web2py /home/git/iesp

/home/www/vhosts/iesp.cs.fsu.edu

git pull

web2py web2py web2py

or git fetch git rebase

web2py

Page 30: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

An alternate developer workflow

Introduces a repository gatekeeper

Page 31: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

iesp

sis.cs.fsu.edu

/home/git/iesp

web2pyiesp

~/iesprepo

git clone /home/git/iesp ~/iesrepo

Developerkeepspersonalrepositoryonserver,readablebyotherteammembers.

Page 32: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

iesp

web2py

iesp

Personalcomputersis.cs.fsu.edu

/home/git/iesp

web2pyiesp

~/iesprepo

git clone ssh://[email protected]/iesrepo

Page 33: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

iesp

web2py

iesp

Personalcomputersis.cs.fsu.edu

/home/git/iesp

web2pyiesp

~/iesprepo

git commit

localchanges

Page 34: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

iesp

web2py

iesp

Personalcomputersis.cs.fsu.edu

/home/git/iesp

web2pyiesp

~/iesprepo

git push

(frompersonalcomputer)

Page 35: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

iesp

web2py

iesp

Personalcomputer

sis.cs.fsu.edu

/home/git/iesp

web2pyiesp

~/iesprepo

git pull from developer’s repository (bygatekeeper)

web2py

iesp

~gatekeeper/iesp

iesp

Page 36: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

web2py

iesp

web2py

iesp

Personalcomputer

sis.cs.fsu.edu

/home/git/iesp

web2pyiesp

~/iesprepo

git push to /home/git/iesp (bygatekeeper)

web2py

iesp

~gatekeeper/iesp

iesp

iesp

Page 37: Git workflows for IESP - Florida State University › ~baker › swe2 › restricted › notes › iespworkflows.pdf · Git workflows for IESP . Outline • Relationships of repositories

Are there use cases have we missed?