mirror of
https://github.com/unshackle-dl/unshackle.git
synced 2026-03-11 17:09:00 +00:00
Created Forking (markdown)
31
Forking.md
Normal file
31
Forking.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
#### Forking
|
||||||
|
|
||||||
|
If you are collaborating with a team on multiple services then forking the project is the best way to go.
|
||||||
|
|
||||||
|
1. Create a new Private GitHub Repository without README, .gitignore, or LICENSE files.
|
||||||
|
Note: Do NOT use the GitHub Fork button, or you will not be able to make the repository private.
|
||||||
|
2. `git clone <your repo url here>` and then `cd` into it.
|
||||||
|
3. `git remote add upstream https://github.com/unshackle-dl/unshackle`
|
||||||
|
4. `git remote set-url --push upstream DISABLE`
|
||||||
|
5. `git fetch upstream`
|
||||||
|
6. `git pull upstream master`
|
||||||
|
7. (optionally) Hard reset to the latest stable version by tag. E.g., `git reset --hard v1.0.0`.
|
||||||
|
|
||||||
|
Now commit your Services or other changes to your forked repository.
|
||||||
|
Once committed all your other team members can easily pull changes as well as push new changes.
|
||||||
|
|
||||||
|
When a new update comes out you can easily rebase your fork to that commit to update.
|
||||||
|
|
||||||
|
1. `git fetch upstream`
|
||||||
|
2. `git rebase upstream/master`
|
||||||
|
|
||||||
|
However, please make sure you look at changes between each version before rebasing and resolve any breaking changes and
|
||||||
|
deprecations when rebasing to a new version.
|
||||||
|
|
||||||
|
If you are new to `git` then take a look at [GitHub Desktop](https://desktop.github.com).
|
||||||
|
|
||||||
|
> [!TIP]
|
||||||
|
> A huge benefit with this method is that you can also sync dependencies by your own Services as well!
|
||||||
|
> Just use `poetry` to add or modify dependencies appropriately and commit the changed `poetry.lock`.
|
||||||
|
> However, if the core project also has dependency changes your `poetry.lock` changes will conflict and you
|
||||||
|
> will need to learn how to do conflict resolution/rebasing. It is worth it though!
|
||||||
Reference in New Issue
Block a user