• Stars
    star
    175
  • Rank 217,318 (Top 5 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 13 years ago
  • Updated almost 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Easy Github Pull Request Lander

Pulley

An Easy Github Pull Request Lander

Introduction

Landing a pull request from Github can be messy. You can push the merge button, but that'll result in a messy commit stream and external ticket trackers that don't automatically close tickets.

Additionally you can pull the code and squash it down into a single commit, which lets you format the commit nicely (closing tickets on external trackers) - but it fails to properly close the pull request.

Pulley is a tool that uses the best aspects of both techniques. Pull requests are pulled and merged into your project. The code is then squashed down into a single commit and nicely formatted with appropriate bug numbers and links. Finally the commit is pushed and the pull request is closed with a reference to the commit.

Getting Started

Install

Make sure you have Node.js and then run npm install -g pulley in Terminal.

Use

Open the target repo in Terminal and run pulley PID, where PID is the Pull Request ID.

Example

Running pulley 332 on the jQuery repo yielded the following closed pull request and commit.

Contribute and Test

In order to test your changes to pulley, you need the ability to:

  • Open and close pull requests
  • Push to a branch on a repo

Essentially, you need your own repo, and the ability to issue pull requests against that repo. Fortunately, GitHub allows you to issue pull requests against your own repo from one branch to another. Here are the steps:

  1. Fork pulley
  2. Checkout the test branch
  3. Branch off from the test branch to another branch named test-1
  4. Create a commit on the test-1 branch
  5. Publish the test-1 branch
  6. Push the commit to the test-1 branch on your fork of pulley
  7. Open a pull request from test-1 to test on your own repo
  8. Use pulley to merge your pull request, and ensure everything went smoothly
  9. Submit your real pull request with your changes

Please lend a hand!

More Repositories

1

node-stream-playground

Explore Node.js streams with an interactive playground.
JavaScript
474
star
2

trie-js

A simple Trie implementation for Node.js.
JavaScript
258
star
3

env-js

A pure-JavaScript browser environment.
JavaScript
224
star
4

fireunit

A Firebug extension for JavaScript testing.
JavaScript
223
star
5

dromaeo

JavaScript Performance Test Suite
HTML
76
star
6

retweet

A simple retweet button.
JavaScript
72
star
7

nodelist

A new DOM NodeList proposal.
HTML
66
star
8

stack-scraper

HTML
62
star
9

node-romaji-name

Normalize and fix common issues with Romaji-based Japanese names.
JavaScript
40
star
10

jquery-workshop

The code behind a workshop for learning about jQuery.
JavaScript
39
star
11

pharos-images

PHAROS Image Database
JavaScript
38
star
12

idyll

Mobile, offline, crowd-sourcing app.
JavaScript
36
star
13

deepleap

JavaScript
34
star
14

elasticsearch-orm

An ORM, like Mongoose, for Elasticsearch.
JavaScript
34
star
15

ukiyoe-web

A rewrite of the Ukiyo-e.org website.
JavaScript
32
star
16

node-yearrange

Node module for converting year range strings into usable dates.
JavaScript
21
star
17

node-matchengine

Node module for using the TinEye MatchEngine API.
JavaScript
18
star
18

vote

Reddit, Hacker News, Digg voting script for Ubiquity.
JavaScript
16
star
19

ukiyoe-scrapers

Museum/database scrapers for Ukiyo-e.org
JavaScript
15
star
20

node-pastec

Node module for using a Pastec server.
JavaScript
15
star
21

node-enamdict

Efficiently query ENAMDICT using Node.js.
JavaScript
13
star
22

ukiyoe-models

Schemas for the jeresig/ukiyoe-web and jeresig/ukiyoe-scrape projects.
JavaScript
13
star
23

jquery-imgscrubber

The dynamic image scrubber from Ukiyo-e.org.
JavaScript
13
star
24

selectortest

A test suite for the Selectors API specification.
13
star
25

matchengine-tools

Tools for interacting with TinEye's MatchEngine service.
JavaScript
12
star
26

modbot

A Reddit moderation bot.
JavaScript
11
star
27

gittip-code

A simple web app for tipping Github repos and NPM modules with Gittip.
JavaScript
10
star
28

wtpa-bot

An IRC bot for managing events.
Perl
10
star
29

jeresig.github.com

A GitHub-powered web site.
7
star
30

god-game

For Art Hack Day!
JavaScript
7
star
31

twitter-timeline-cache

Archive your Twitter home timeline (posts by others).
JavaScript
7
star
32

visual-artwork-cluster

Using Pastec to visually cluster similar artworks for easy cataloging.
JavaScript
6
star
33

node-appcache-glob

Node.js Appcache Builder
JavaScript
6
star
34

node-parse-dimensions

Parse physical object dimensions and convert them into a standardized form.
JavaScript
6
star
35

playscrape

TypeScript
6
star
36

nyt-crossword

An archive of The New York Times crossword clues and answers from October 1996 through to the end of 2011
5
star
37

begin-app

Begin app
JavaScript
5
star
38

matchengine-data-analysis

Tools for analyzing data from TinEye's MatchEngine service.
JavaScript
5
star
39

science-game

JavaScript
5
star
40

datacook

Perl
4
star
41

image-report

JavaScript
4
star
42

ig-snag

Snag a bunch of images from an instagram tag.
JavaScript
4
star
43

begin-functions-app

Begin app
JavaScript
3
star
44

parse-catalogue

JavaScript
2
star
45

node-bulk-replace

JavaScript
2
star
46

ukiyoe-colors

JavaScript
2
star
47

apples2artworks

Python
1
star
48

nypl-ukiyoe

Python
1
star
49

johnresig.com-wp-theme

PHP
1
star
50

node-ndlna

Node module for searching the NDL Name Authority.
JavaScript
1
star