Skip to content

Instantly share code, notes, and snippets.

@vine77
vine77 / git-subtree-subdirectory.md
Last active May 14, 2019 00:53
Use git subtree to pull a subdirectory of an upstream repository into a subdirectory of the main repository

Create a branch on the upstream repository that contains only the history of a subdirectory, now with that subdirectory at the root.

cd ~/src/design-system/
git subtree split --prefix=packages/react-workflow --branch=react-workflow

Import from the branch created above into a subdirectory of the main repository. Note: The prefix for this subdirectory doesn't have to be the same as that used

@vine77
vine77 / .gitconfig
Created April 22, 2017 16:00
git alias to log with graph of merges and links to GitHub PRs (if you have an "upstream" remote)
[alias]
lg = "!f() { orgrepo=$(git remote -v | grep 'upstream.*fetch' | sed -E 's/.*github\\.com[:\\/]([^\\. ]+).*/\\1/' | sed -E 's/\\//\\\\\\//'); git log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit | sed -E \"s/Merge pull request #/Merge PR http:\\/\\/github.com\\/$orgrepo\\/pull\\//\"; }; f"
@vine77
vine77 / git-lg.sh
Created April 22, 2017 15:05
git log with graph of merges and links to GitHub PRs (if you have an "upstream" remote)
git log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit | sed -E "s/Merge pull request #/Merge PR http:\/\/github.com\/$(git remote -v | grep 'upstream.*fetch' | sed -E 's/.*github\.com[:\/]([^\. ]+).*/\1/' | sed -E 's/\//\\\//')\/pull\//"
var locations = {
morning: [{
route: 17,
locID: 6849
}, {
route: 290,
locID: 13714
}],
evening: [{
route: 17,
@vine77
vine77 / controllers.application.js
Last active July 20, 2016 23:55
Next TriMet Arrival
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Next TriMet Arrival',
minutes: Ember.computed('model.scheduled', function () {
return Math.floor((new Date(this.get('model.scheduled')) - new Date()) / 60000);
})
});
import Ember from 'ember';
// Imports: Use the app's name as the namespace
import foo from 'twiddle/lib/foo'
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
message: Ember.computed(foo)
});
import Ember from 'ember';
import Person from '../ddau-objects/person';
import Name from '../ddau-objects/name';
const presets = [
Person.create({
firstName: Name.create({value: 'John'}),
lastName: Name.create({value: 'Doe'})
}),
Person.create({
@vine77
vine77 / application.route.js
Last active December 22, 2015 11:52
Named substate test
import Ember from 'ember';
export default Ember.Route.extend({
model() {
return Ember.RSVP.hashSettled({
first: new Ember.RSVP.Promise(function (resolve) {
window.setTimeout(function () {
resolve('Hello world!');
}, 1500);
}),
@vine77
vine77 / application.controller.js
Created November 18, 2015 01:40
Bound attribute syntax for `disabled` attributes using booleans
import Ember from 'ember';
export default Ember.Controller.extend({
appName:'Ember Twiddle'
});
@vine77
vine77 / application.route.js
Last active November 18, 2015 00:16
Test of inline attribute composition with a label's for attribute
import Ember from 'ember';
export default Ember.Route.extend({
model: function () {
return {
id: 'hello2020'
};
}
});