67 lines
1.8 KiB
Markdown
67 lines
1.8 KiB
Markdown
**This is a temporary README. We'll restore the old README prior to PR upstream.**
|
|
|
|
# Consul Connect
|
|
|
|
This repository is the forked repository for Consul Connect work to happen
|
|
in private prior to public release. This README will explain how to safely
|
|
use this fork, how to bring in upstream changes, etc.
|
|
|
|
## Cloning
|
|
|
|
To use this repository, clone it into your GOPATH as usual but you must
|
|
**rename `consul-connect` to `consul`** so that Go imports continue working
|
|
as usual.
|
|
|
|
## Important: Never Modify Master
|
|
|
|
**NEVER MODIFY MASTER! NEVER MODIFY MASTER!**
|
|
|
|
We want to keep the "master" branch equivalent to OSS master. This will make
|
|
rebasing easy for master. Instead, we'll use the branch `f-connect`. All
|
|
feature branches should branch from `f-connect` and make PRs against
|
|
`f-connect`.
|
|
|
|
When we're ready to merge back to upstream, we can make a single mega PR
|
|
merging `f-connect` into OSS master. This way we don't have a sudden mega
|
|
push to master on OSS.
|
|
|
|
## Creating a Feature Branch
|
|
|
|
To create a feature branch, branch from `f-connect`:
|
|
|
|
```sh
|
|
git checkout f-connect
|
|
git checkout -b my-new-branch
|
|
```
|
|
|
|
All merged Connect features will be in `f-connect`, so you want to work
|
|
from that branch. When making a PR for your feature branch, target the
|
|
`f-connect` branch as the merge target. You can do this by using the dropdowns
|
|
in the GitHub UI when creating a PR.
|
|
|
|
## Syncing Upstream
|
|
|
|
First update our local master:
|
|
|
|
```sh
|
|
# This has to happen on forked master
|
|
git checkout master
|
|
|
|
# Add upstream to OSS Consul
|
|
git remote add upstream https://github.com/hashicorp/consul.git
|
|
|
|
# Fetch it
|
|
git fetch upstream
|
|
|
|
# Rebase forked master onto upstream. This should have no changes since
|
|
# we're never modifying master.
|
|
git rebase upstream master
|
|
```
|
|
|
|
Next, update the `f-connect` branch:
|
|
|
|
```sh
|
|
git checkout f-connect
|
|
git rebase origin master
|
|
```
|