RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
Step 1: Sign in the CMF gerrit (https://code.rdkcentral.com/r/q/status:open) and Go to below link for repo selection,
https://code.rdkcentral.com/r/admin/repos and enter the repo name (For example: meta-cmf-raspberrypi) in filter search box .
It shown as like below, Once we entered the repo name in filter search box.
Step 2: check the components/generic/rdk-oe/meta-cmf-raspberrypi repo in Repository Name column.
It shown as like below,
Step 3: Once we clicked the meta-cmf-raspberrypi repo , It will re-direct to https://code.rdkcentral.com/r/admin/repos/components/generic/rdk-oe/meta-cmf-raspberrypi (like below screenshot).
In this below screenshot, we are able to see 2 options under Download,
So Committing the code changes, we need to select & copy the first option in above screenshot.
Step 4: Run the git Clone with commit-msg hook command. By default, it taking as "master" branch. So please mention the branch name before you are executing the git clone with commit-msg command in terminal.
$ git clone "https://code.rdkcentral.com/r/components/generic/rdk-oe/meta-cmf-raspberrypi" -b rdk-next && (cd "meta-cmf-raspberrypi" && gitdir=$(git rev-parse --git-dir); curl -o ${gitdir}/hooks/commit-msg https://code.rdkcentral.com/r/tools/hooks/commit-msg ; chmod +x ${gitdir}/hooks/commit-msg) Cloning into 'meta-cmf-raspberrypi'... remote: Counting objects: 151, done remote: Total 10764 (delta 0), reused 10764 (delta 0) Receiving objects: 100% (10764/10764), 2.58 MiB | 6.96 MiB/s, done. Resolving deltas: 100% (4272/4272), done. % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1792 100 1792 0 0 4876 0 --:--:-- --:--:-- --:--:-- 4869 $ ls meta-cmf-raspberrypi
Step 5: Using "git branch" command to verify the branch name
$ git branch * rdk-next
Step6: Add or modify the required files. Using "git status" command to verify the newly added or modified files(It shown as RED color in below screenshot).
Step 7: Add the Modified /New files to git by using "git add" command.
$ git add <path_of_file> For example, git add recipes-ccsp/util/utopia/system_defaults
Step 8: Using "git status" command to verify the current code changes(whether it added successfully or not). It shown as GREEN color in below screenshot
Step 9: Commit the code changes by using "git commit -sv" command. It goes to nano editor once we entered the commit command.
Commit Format will be below,
<Project-Ticket-NO> : <summary of the ticket> <blank line> Reason for change: <add the reason why you are committing these changes> Test Procedure: < Test steps> Risks: <may be Low/Medium/High - based on your changes impact> For Example, REFPLTB-915 : Sometimes, WebUI login is failing in dunfell builds Reason for change: Issue fixed Test Procedure: Tested with local build Risks: Low
To exit the nano editor prompt . Need to follow the below steps,
Then , check the status of your commit
$ git status On branch rdk-next Your branch is ahead of 'origin/rdk-next' by 1 commit. (use "git push" to publish your local commits) nothing to commit, working tree clean
Step 10: Push the code changes in CMF gerrit by using "git push " command.
$ git push origin HEAD:refs/for/<branch-name> For example, Enumerating objects: 11, done. Counting objects: 100% (11/11), done. Delta compression using up to 16 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 640 bytes | 640.00 KiB/s, done. Total 6 (delta 5), reused 0 (delta 0) remote: Resolving deltas: 100% (5/5) remote: Processing changes: refs: 1, new: 1, done remote: commit 99b6d76: warning: subject >50 characters; use shorter first paragraph remote: remote: SUCCESS remote: remote: New Changes: remote: https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-raspberrypi/+/51157 REFPLTB-915 : Sometimes, WebUI login is failing in dunfell builds To https://code.rdkcentral.com/r/components/generic/rdk-oe/meta-cmf-raspberrypi * [new branch] HEAD -> refs/for/rdk-next
Step 11: Click the link from git push success status(remote: https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-raspberrypi/+/51157) to verify whether your code changes are successfully pushed or not in CMF gerrit.
If we have committed code changes repo folder in your local terminal then go for this approach.
Step 1 : Go to the committed code changes repo folder path in your local terminal . Rework the code changes
Step 2 : Using "git status" command to verify re-worked files(It shown as RED color in below screenshot).
Step 3: Add the Re-Worked files to git by using "git add" command.
$ git add <path_of_file> For example, git add recipes-ccsp/util/utopia/system_defaults
Step 4: Using "git status" command to verify the current code changes(whether it's successfully added or not). It shown as GREEN color in below screenshot
Step 5: Commit the changes by using below command,
$ git commit --amend
Step 6: Push the code changes to CMF Gerrit
$ git push origin HEAD:refs/for/<branch-name>
Step 7: Follow the Step 11 in Steps to raise review in CMF gerrit.
If we don't have the commited code changes repo folder in your local terminal then go for this approach,
Step 1 : Follow the same 4 steps in Steps to raise review in CMF gerrit.
Step 2: Just go to committed code changes link in code.rdkcentral.com then click the EDIT option in right side of the UI page. Then select the "Download Patch" option from EDIT. It shown as below screenshot,
Step 3: Then click the cherry-pick option like below
Step 4 : Run this cherry-pick command in cloned repo(step1),
$ git fetch "https://code.rdkcentral.com/r/components/generic/rdk-oe/meta-cmf-raspberrypi" refs/changes/57/51157/1 && git cherry-pick FETCH_HEAD remote: Counting objects: 473, done remote: Finding sources: 100% (6/6) remote: Total 6 (delta 5), reused 6 (delta 5) Unpacking objects: 100% (6/6), done. From https://code.rdkcentral.com/r/components/generic/rdk-oe/meta-cmf-raspberrypi * branch refs/changes/57/51157/1 -> FETCH_HEAD [rdk-next 09912ac] REFPLTB-915 : Sometimes, WebUI login is failing in dunfell builds Date: Fri Jan 22 12:57:53 2021 +0000 1 file changed, 1 insertion(+), 1 deletion(-)
Step 5 : Using "git status" command to verify re-worked files(It shown as RED color in below screenshot).
Step 6: Add the Re-Worked files to git by using "git add" command.
$ git add <path_of_file> For example, git add recipes-ccsp/util/utopia/system_defaults
Step 7: Using "git status" command to verify the current code changes(whether it's successfully added or not). It shown as GREEN color in below screenshot
Step 8: Commit the changes by using below command,
$ git commit --amend
Step 9: Push the code changes to CMF Gerrit
$ git push origin HEAD:refs/for/<branch-name>
Step 10: Follow the Step 11 in Steps to raise review in CMF gerrit.
Step1: Forking the github repo from base repository
Login to the github account and search for the repository (For example, rdkcentral/meta-turris). Then fork the Base repository to create Head repository for the user
Once you click on fork, below screenshot will be received. Now from the 'code' button copy the URL
Step2: Clone the Head repository from github
$ git clone <github_url> Example, git clone https://github.com/KaviyaKumaresan/meta-turris.git $ cd meta-turris
Step3: One approach is creating a temporary/topic branch for pushing the code
$ git checkout -b <topic_branch_name> Example, git checkout -b demo
Step4: Fetch all the updates into the topic branch to be in tip of Base repository
$ git remote add upstream https://github.com/rdkcentral/meta-turris $ git remote -v $ git fetch $ git pull upstream master
Step5: Make changes in local github repository and can verify with "git status" command
$ git status On branch demo Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: recipes-rdkb/sysint-broadband/files/sysint-broadband.bbappend no changes added to commit (use "git add" and/or "git commit -a")
Step6: Add required list of files where changes are done
$ git add <path_of_file_changes_done> Example, git add recipes-rdkb/sysint-broadband/sysint-broadband.bbappend
Step7: Give a commit message
$ git commit -sv
Step8: Push the changes
$ git push origin <topic_branch_name> Example, git push origin demo
Need to type in Username(github handle) and Password(Github Access Token). NOTE: User need to create new Github Access token
Example, Username for 'https://github.com': KaviyaKumaresan Password for 'https://KaviyaKumaresan@github.com': Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 453 bytes | 0 bytes/s, done. Total 5 (delta 4), reused 0 (delta 0) remote: Resolving deltas: 100% (4/4), completed with 4 local objects. remote: remote: Create a pull request for 'demo' on GitHub by visiting: remote: https://github.com/KaviyaKumaresan/meta-turris/pull/new/demo remote: To https://github.com/Kaviyakumaresan/meta-turris.git
1. Once after pushing the commit into Head repository, visit the URL generated,
Example,
https://github.com/KaviyaKumaresan/meta-turris/pull/new/demo
With the link, you will find the below screenshot
Click on the 'Create pull request' to generate Pull Request.
Example, PR created,