mirror of
https://github.com/unshackle-dl/unshackle.git
synced 2026-03-11 00:49:00 +00:00
Destroyed Forking (markdown)
31
Forking.md
31
Forking.md
@@ -1,31 +0,0 @@
|
||||
#### 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