Skip to content

Instantly share code, notes, and snippets.

Avatar

Dale Henrichs dalehenrich

View GitHub Profile
@jbenet
jbenet / simple-git-branching-model.md
Last active Jun 14, 2021
a simple git branching model
View simple-git-branching-model.md

a simple git branching model (written in 2013)

This is a very simple git workflow. It (and variants) is in use by many people. I settled on it after using it very effectively at Athena. GitHub does something similar; Zach Holman mentioned it in this talk.

Update: Woah, thanks for all the attention. Didn't expect this simple rant to get popular.

@dalehenrich
dalehenrich / bootstrap.st
Created Mar 12, 2012
Bootstrapping FileTree support into Pharo image
View bootstrap.st
"Note that these instructions apply to Phase1 ... not yet alpha, so take care:)
Assuming Pharo 1.3"
"Bootstrap filetree code"
Gofer new
url: 'http://ss3.gemstone.com/ss/FileTree';
package: 'ConfigurationOfFileTree';
load.
((Smalltalk at: #ConfigurationOfFileTree) project version: '1.0') load.
@dalehenrich
dalehenrich / setupPharo14Sample.st
Created Mar 2, 2012
Replace repositoryGroups for workingCopies with filetree: equivalent
View setupPharo14Sample.st
"cd to a likely spot on disk and run the following at a shell prompt (after installing git):
git clone -b develop https://github.com/Phariverse/PharoCore.git
then set pharoCoreRepoPath below to path to repository directory inside PharoCore git repository.
Finally run the expressions in this workspace to connect your image up to the correct repositories.
"
| pharoCoreRepoPath metacelloRepository filetreeRepository
@dalehenrich
dalehenrich / bootstrapGit.st
Created Feb 23, 2012
Bootstrap git support into a Pharo image
View bootstrapGit.st
"Note that the the git work has not even achieved alpha, yet, so don't
bootstrap into an image that you care about:)
Assuming Pharo 1.3"
"Bootstrap filetree code"
Gofer new
url: 'http://ss3.gemstone.com/ss/FileTree';
package: 'ConfigurationOfFileTree';
load.
@dalehenrich
dalehenrich / smalltalkProjectSructure.md
Created Feb 23, 2012
Proposed Smalltalk project directory structure
View smalltalkProjectSructure.md

##Monticello Package Structure

The basic idea is to store individual methods in files so that git can manage method-level history. The split between classes and extensions in the snapshot directory is differentiate between classes defined in a package and extension methods defined in the package:

+-Sample-Core.pkg\
  +-snapshot\
  | +-classes\
  | | +-SampleCore.class\
  | |   +-SampleCore.st
@dalehenrich
dalehenrich / MetacelloScripting.st
Created Feb 23, 2012
Sample of Metacello Scripting API
View MetacelloScripting.st
"download HEAD of master branch of the sample project, i.e., download from github, but don't load Sample project into image"
Metacello new
project: 'Sample';
repository: 'github://dalehenrich/sample:master/core';
get.
"load HEAD of master branch of the sample project, i.e., download from github, and load Sample project into image"
Metacello new
project: 'Sample';
repository: 'github://dalehenrich/sample:master/core';