update-checkout, as far as I know, is only there to help you work with *all* the Swift repositories at the same time. This way you won’t have to separately go to every folder and invoke `git pull origin master`. The config file for update-checkout simply lists the ‘schemes’ which are the combinations of branches from different repos that are compatible with each other. For example, master branch in apple/swift repository supposed to be compiled with ‘stable’ branches of llvm and clang, which is not true for the ‘swift-3.0-branch’ branch, for example, it should be compiled with ‘swift-3.0-branch’ of llvm etc.
Long story short, it is possible to update the update-checkout and its config to simplify your workflow, but you don’t have to do so.
I personally use this script only before starting a new branch, to make sure that my changes go on top of current master and simplify merging them later.
git checkout master
git checkout -b my-new-branch
... some work gets done …
git add .
git commit -m “Adding an absolutely awesome new feature”
git push mine my-new-branch # please note that I prefer to call my personal fork ‘mine’ whereas usually people call their fork remotes ‘origin’ and the upstream ‘upstream’.
Within a few seconds at the top of the github page you will see something like this:
Pressing this green button will initiate the creation of your Pull Request with the changes you’ve just pushed to your fork.
Hope this helps,
On Mar 29, 2017, at 10:35 AM, Pavol Vaskovic <firstname.lastname@example.org> wrote:
On 28 Mar 2017, at 01:19, Max Moiseev <email@example.com <mailto:firstname.lastname@example.org>> wrote:
This tutorial looks very detailed and should answer most of your questions: https://www.digitalocean.com/community/tutorials/how-to-create-a-pull-request-on-github
Thank you for that link! But I'd like to hear how does that general process integrate with the `update-checkout` script provided in the swift project. That's what is described in the Getting Started part of the Readme.md and I'd love to see more thorough description on the Contributing Code section.
I'm confused about where/how do I switch my local copy created by the `update-checkout` script to use my own fork from https://github.com/palimondo/swift
Will that script get confused when I manually mess with the directory structure it created? What is the update-checkout-config.json for?