yamazaki

导航

git command

gitwork

1.先push 到网页:

Android :git push --no-thin aosp HEAD:refs/for/master 
WRT : git push aosp HEAD:refs/for/OpenWRT_master_A01
kernal : git push aosp HEAD:refs/for/CustBranch_QA160627_nuplayer_6486476

2.再push 提交server:

git push aosp HEAD:master
git push aosp HEAD:OpenWRT_master_A01
git push --no-thin origin HEAD:refs/for/master 

3.Force PUSH

git add -f -A

先進去code review
master :
https://wiki.realtek.com/pages/viewpage.action?pageId=81824481
SZ_child:
https://wiki.realtek.com/pages/viewpage.action?pageId=87481049
Hypervisor:
https://wiki.realtek.com/pages/viewpage.action?pageId=88967291

遍历project 版本:

sample:
repo list |awk 'BEGIN{system("rm /tmp/android_rev.txt"); cnt=1}{printf "\n==== "cnt" === "$1" "$2" "$3" ===========\n" >> "/tmp/android_rev.txt" ; cnt++; system("pushd "$1 " ;  git log -n 1 --name-only --pretty=fuller >> /tmp/android_rev.txt ; popd")}'

item1 :
repo list |awk 'BEGIN{system("rm /tmp/android_rev.txt"); cnt=1}{printf "\n==== "cnt" === "$1" "$2" "$3" ===========\n" >> "/tmp/android_rev.txt" ; cnt++; system("pushd "$1 " ;  git log --since="2016-12-23" >> /tmp/android_rev.txt ; popd")}'

推manifest

ssh -p 29418 rsgerrit gerrit create-project SZ_SDK_TEST/manifests -b master --empty-commit
ssh -p 29418 rsgerrit gerrit set-project-parent --parent mirror-project-permission-base SZ_SDK_TEST/manifests
强哥 server & bootcode
ssh 172.21.177.108 
 (chihchiang/realtek)
cd /home1/chihchiang/RS_SDK_NuPlayer/Android_N_SDK/trunk-7.0_1/bootcode/
<a href="http://cadinfo.realtek.com.tw/svn/CN/CNDOC/trunk/CNDOC/DHCDOC/OTT/branches/Kylin/software/bootcode" style="font-family: 'Franklin Gothic Book';"><span data-wiz-span="data-wiz-span" style="font-family: 微软雅黑; color: rgb(0, 0, 0);">http://cadinfo.realtek.com.tw/svn/CN/CNDOC/trunk/CNDOC/DHCDOC/OTT/branches/Kylin/software/bootcode</span></a>

SVN

r986613 r986413 
svn update -r r986413 
svn diff -r r171369:r171563 > cappatch.patch

git cherry-pick git fetch

  git cherry-pick  fe684c290e615d224ec469a0b80f9c3c107f83b8

查看某笔提交后的所有commit

git log --pretty=fuller --stat da5c6e7ffbf0bc6d6d77df80f765ec398404c880..

Git patch git fetch

git format-patch -1 fe684c290e615d224ec469a0b80f9c3c107f83b8
patch –p1 < 0001-DEV.patch

自建Git 管理SDK

find -type d -empty
1. $ find . \( -type d -empty \) -and \( -not -regex ./\.git.* \) -exec touch {}/.gitignore \;
   $ find . \( -type d -empty \) -and \( -not -regex ./\.git.* \) -exec touch {}/gitkeep \;
2. $ git init
3. $ git add . 
4. $ git commit . -m "[Init] Git Log Start"
git reset --hard commitID(默认上一个)
scp 0001-16744-sync-DVFS-with-QA140317-0000-2015-07-17.patch tristan@172.29.5.194:/home/tristan

Boot loader

svn co http://cadinfo.realtek.com.tw/svn/col/DVR/branches/phoenix/bootcode/uboot

清除GIT 信息:

cd到该文件夹

//删除文件夹下的所有 .svn 文件
find . -name ".svn" | xargs rm -Rf
//删除文件夹下的所有 .git 文件
find . -name ".git" | xargs rm -Rf

新建project:

ssh -p 29418 $git_server_ip gerrit create-project $projectname -b master --empty-commit
ssh -p 29418 $git_server_ip gerrit set-project-parent --parent mirror-project-permission-base $projectname

ssh -p 29418 stan_liu@58.211.24.153 gerrit create-project NVR_1024 -b master --empty-commit
ssh -p 29418 stan_liu@58.211.24.153 gerrit set-project-parent --parent mirror-project-permission-base NVR_1024

ssh -p 29418 stan_liu@122.146.120.27 gerrit create-project NVR_1024TW -b master --empty-commit
ssh -p 29418 stan_liu@122.146.120.27 gerrit set-project-parent --parent mirror-project-permission-base NVR_1024TW

Git 中的tag指向一次commit的id,通常用来给开发分支做一个标记,如标记一个版本号。

打标签

git tag -a v1.01 -m "Relase version 1.01"

注解:git tag 是打标签的命令,-a 是添加标签,其后要跟新标签号,-m 及后面的字符串是对该标签的注释。
提交标签到远程仓库
git push origin --tags
注解:就像git push origin master 把本地修改提交到远程仓库一样,-tags可以把本地的打的标签全部提交到远程仓库。

删除标签

git tag -d v1.01
注解:-d 表示删除,后面跟要删除的tag名字
删除远程标签
git push origin :refs/tags/v1.01
注解:就像git push origin :branch_1 可以删除远程仓库的分支branch_1一样, 冒号前为空表示删除远程仓库的tag。

查看标签

git tag
或者

git tag -l
来源: <a href="https://blog.csdn.net/rainnings/article/details/9821027"><span data-wiz-span="data-wiz-span" style="font-family: 微软雅黑; color: rgb(0, 0, 0);">https://blog.csdn.net/rainnings/article/details/9821027</span></a>

给特定commit 打标签

git tag -a v0.1 -m "version 0.1 released"3628164
git push origin v0.1

LK upload:

空文件夹需要特别留意上后传
 ap/lib/
 ap/obj/
 mcp/lib/
 mcp/obj/
otpprogrammer -》.gitignore -> .h .o ,optprogrammer,

5.others

find . \( -type d -empty \) -and \( -not -regex ./\.git.* \) -exec touch {}/.gitignore \;
find . \( -type d -empty \) -and \( -not -regex ./\.git.* \) -exec touch {}/gitkeep \;
add ---ap,data,cache,patch 4个文件夹

7.git push signal 13 error

 包size 过大,需要修改config
cd .git 
git config http.postBuffer 52428800

8 服务器对拷

  977 rsync -P -e ssh root@172.16.2.108:/root/Android-10_hank_20191125_TV_Cert.tar.bz2
  978 ls
  979 rsync -P -e ssh root@172.16.2.108:/root/Android-10_hank_20191125_TV_Cert.tar.bz2 Android-10_hank_20191125_TV_Cert.tar.bz2
  980 ll
  981 mv Android-10_hank_20191125_TV_Cert.tar.bz2 ~/
  982 cd ~
  983 ls
  984 tar xvf Android-10_hank_20191125_TV_Cert.tar.bz2
  985 R
  986 ll
  987 mv Gerrit/git/Android-10_hank_20191125_TV_Cert /Gerrit/git/
  988 cd /Gerrit/git/
  989 chown apache:apache -R Android-10_hank_20191125_TV_Cert /Gerrit/git/
rsync -P -e ssh root@172.16.2.108:/Gerrit/git/Android_P_HERCULES_20191111_AOSP.tar.bz2 Android_P_HERCULES_20191111_AOSP.tar.bz2

9 rsync project

步驟:

  1. 取回OpenWrt-ImageBuilder-rtd1295-mnas_emmc.Linux-x86_64.tar.bz2並解壓縮
  2. 欲打上升級版本的 SDK 請先做一次清理(最好重新checkout)
    build_dir/target-aarch64_cortex-a53+neon_glibc-2.19/linux-rtd1295_mnas_emmc/linux-4.1.7/ 底下做以下動作
    make clean;rm -rf include/config/;git stash;git stash clear
    此部分可以參考 build_release_openwrt.sh 下的函數 clean_openwrt
  3. 升級 linux-4.1.7
    SQA 的SDK中的 build_dir/target-aarch64_cortex-a53+neon_glibc-2.19/linux-rtd1295_mnas_emmc/linux-4.1.7/ 直接以 rsync 導入
    使用方式: rsync -avP {來源資校夾} {目的地資料夾}
    rsync -avP /home/tristan/station/0606/OpenWrt-ImageBuilder-rtd1295-mnas_emmc.Linux-x86_64/linux-4.1.7/ linux-4.1.7/
    導入後 使用 git status 查看狀態是否符合預期
  4. 在OpenWrt-ImageBuilder-rtd1295-mnas_emmc.Linux-x86_64/target/linux/rtd1295/mnas_emmc/config-4.1
    是linux-kernel 的 config 也要一併更新

create mirror:

repo init -u ssh://rsgerrit:29418/1395_ANDROID_P_AOSP_190116_SDK/20190117/manifests -b master -mmirror.xml --mirror --repo-url=ssh://rsgerrit:29418/git-repo

checkout mirror

1.分步
mkdir android

2.脚本vi .buildconfig
CONFIG_MIRROR_LOCATION mirror_dir (会自动讲mirrorpath 添加到--reference 参数后)
./build_all.sh checkout
可以看到是直接就checkout file 少去了reciving object 的步骤


来自为知笔记(Wiz)


posted on 2021-10-06 10:08  yamazaki02  阅读(88)  评论(0)    收藏  举报