Giter VIP home page Giter VIP logo

pulley's Introduction

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!

pulley's People

Contributors

mikesherov avatar sindresorhus avatar jeresig avatar nschonni avatar doublerebel avatar rkatic avatar grahams avatar vastbinderj avatar krinkle avatar eddiemonge avatar rwaldron avatar supahgreg avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.