【1 commit command】
/mtkoss/git/mtk_repo start local-branch . //在包含 .git 的文件夹下使用,在 add 之前新建 local branch,upload 会自动 commit 到远端对应的 branch
/mtkoss/git/mtk_repo sync . //根据 manifest sync commit
/mtkoss/git/mtk-repo abandon local-branch //更换 branch name 时,可以先 abandon 掉,再重新 start
git status
git add <file name>
git commit -s //可以通过 -O print 当前已经 open 的 CR,link 对应的 CR ID commit
git commit --amend //在未 merge 之前,可以合并到之前的改动中
#按照 template 填写 commit 信息,注意填写 1)Signed-off-by 邮箱;在申请账号的时候已经填在系统中了;2)CR-Id 在 link CR 后会自动填上,未 link 则需要手动填写;3)Change-Id 在填写完 git commit 信息后会自动带上,可以通过 git commit --amend 进行 check;
/mtkoss/git/mtk_repo upload . //如果前面已经建过 local branch,可以直接 upload;
git push mediatek HEAD:refs/for/master //将当前 HEAD push 至 远端 mediatek 对应的 master branch;手动 push 的方式;
【2 other command】
git log //check 当前 repo commit 的详细记录,可以通过这种方式找 module owner;
git log --oneline
git reset --hard HEAD~3 //(HEAD^/HEAD~2);//删除最新的第 3//1/2 笔 commit,本地改动也会被还原;但已经上到 gerrit 上的 commit 不会被删除,会需要手动 abandon;
cherry pick //从 gerrit 上指定 patch 拿到 cherry pick command,在对应的 repo 下执行,若无 conflict,会自动 commit;若有 comflict,需要本地 fix 后,手动 git commit;cherry pick 是否成功可以通过 git log 是否包含 cherry pick 的 commit 信息;
git branch -a //local branch 及 当前 repo 对应远端的所有 branch
git branch //local branch