[BFCL] Guide to Major Release with Breaking API Changes #521
devanshamin
started this conversation in
Ideas
Replies: 1 comment 2 replies
-
|
Please share your thoughts - @ShishirPatil @CharlieJCJ @HuanzhiMao @Fanjia-Yan
GitHub releases provide a structured way to deliver software updates to users, making it easier for developers to manage and communicate changes effectively. For example, |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Summary of Steps for Merging PR #510
Split Subfolder into Separate Branch:
git subtree splitto create a new branch forberkeley-function-call-leaderboardwhile preserving commit history.Create New Repository:
bfcl).Set Up Releases:
Add
bfclas a Submodule:berkeley-function-call-leaderboardsubfolder.bfclas a submodule and commit the changes.Update Submodule Periodically:
End Product
Approach on Merging PR #510
Step 1: Split the
gorilla/berkeley-function-call-leaderboardSubfolder into a Separate Branch While Preserving the CommitsStep 2: Move the
gorilla/berkeley-function-call-leaderboardSubfolder with Commits to a New Repository$ git clone https://github.com/devanshamin/gorilla.git -b bfcl_main # [Optional] Rename the `gorilla` repository/directory to `bfcl` $ git remote set-url origin https://github.com/devanshamin/bfcl.git $ git branch -M main $ git push -u origin mainStep 3: Set Up Releases in the New Repository
$ git tag -a v0.1.0 -m "Initial release v0.1.0" $ git push origin v0.1.0Now, you will have the existing codebase of
gorilla/berkeley-function-call-leaderboardpackaged and available asv0.1.0for backward compatibility:Add
bfclRepository to Gorilla Repository as a SubmoduleStep 1: Clone the Gorilla Repository and Create a New Branch
Step 2: Remove the Subfolder (
berkeley-function-call-leaderboard) from the Gorilla Repositorygit rm -r berkeley-function-call-leaderboard git commit -m "Remove subfolder in preparation for submodule"Step 3: Rewrite History to Remove Subfolder (
berkeley-function-call-leaderboard) CommitsStep 4: Add the New Repository (
bfcl) as a Submodulegit submodule add https://github.com/devanshamin/bfcl.git berkeley-function-call-leaderboard git add .gitmodules berkeley-function-call-leaderboard git commit -m "Add `berkeley-function-call-leaderboard` as submodule" git push origin new_mainPeriodically Update the
berkeley-function-call-leaderboardSubmodule in the Gorilla RepositoryStep 1: Update the Submodule to the Desired Release
Step 2: Commit the Submodule Update
git add berkeley-function-call-leaderboard git commit -m "Update submodule to v0.1.0" git push origin new_mainBeta Was this translation helpful? Give feedback.
All reactions