国产成人无码一区二区三区在线_亚洲一区二区三区精品在线_国严精品久久久久久亚洲影视 _国产精品福利在线播放_中文字幕av导航_玉米视频成人免费看_国产v亚洲v天堂无码久久久_一区二区三区资源_免费成人深夜夜行视频_国产在线观看成人_一区二区三区产品免费精品久久75_国产国语videosex另类

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

分享一個重要的Git技巧,能保護(hù)核心代碼!

前段時間完成了一個核心代碼保護(hù)的功能,目標(biāo)在關(guān)鍵代碼被修改及時同步給其他人,避免沒經(jīng)過 review 就上線導(dǎo)致問題,提示的效果圖如下:

分享一個重要的Git技巧,能保護(hù)核心代碼!

在實現(xiàn)的過程中,用到一些平時使用不多的 Git 技巧,這篇文章來總結(jié)一下。

如何獲取當(dāng)前提交用戶信息

這個比較簡單,通過 git config user.name 即可:

04318deMacBook-Pro % git config user.name zhangshixin
登錄后復(fù)制

git config 保存了很多配置信息,其中常用的有自定義快捷鍵、用戶信息、項目地址、分支信息等:

504318deMacBook-Pro % git config -l  //快捷鍵 begin >>> 我們可以定義自己的 git 快捷鍵 alias.st=status           alias.co=checkout alias.cb=checkout alias.p=pull alias.pr=pull alias.pu=push alias.cm=commit alias.br=branch alias.cm=commit alias.undo=reset alias.rbc=rebase alias.save=stash alias.pop=stash //快捷鍵 end <<< 我們可以定義自己的 git 快捷鍵  //用戶名稱和郵箱 begin >>> user.name=zhangshixin user.email=shixin.zhang@xxx.com //用戶名稱和郵箱 end <<<  //項目和分支信息 begin >>> remote.origin.url=git@gitlab.xxx:android/xxx.git remote.origin.fetch=+refs/heads/*:refs/remotes/origin/* branch.master.remote=origin branch.master.merge=refs/heads/master branch.Canary.remote=origin branch.Canary.merge=refs/heads/Canary //項目和分支信息 end <<<  pull.rebase=true    //默認(rèn) pull 是 merge 還是 rebase
登錄后復(fù)制

如何獲取當(dāng)前分支

為了減少提示頻率,最好只檢測核心的分支的提交(包括 merge commit)。如何獲取當(dāng)前分支呢?有一個簡單的方式:

git symbolic-ref --short HEAD
登錄后復(fù)制

這句命令主要包括兩個關(guān)鍵字:symbolic-refHEAD

symbolic-ref 可以讀取、修改和刪除符號引用。

什么是符號引用呢?它表示一個以 refs 開頭的文件(比如 refs/heads/develop),這個文件保存著本地每個分支當(dāng)前所處 commit。

我們可以打開 git 項目的 .git 文件夾,在其中的 refs/heads 文件夾中會保存各個分支當(dāng)前所指向的 commit:

分享一個重要的Git技巧,能保護(hù)核心代碼!

HEAD 指的是 .git/HEAD,就是一個文件,保存著當(dāng)前指向的符號引用:

分享一個重要的Git技巧,能保護(hù)核心代碼!

因此 git symbolic-ref --short HEAD 的含義就是讀取 .git/HEAD 文件的內(nèi)容,我這里就是 refs/heads/develop 文件,因此就得出當(dāng)前分支是 develop 分支。

如何獲取本地未 push 的所有 commit

有時候我們會在本地提交多次后再 push,因此在攔截 push 時,需要獲取到當(dāng)前要 push 的所有 commit 信息,然后獲取每個 commit 修改的文件。

獲取要 push 信息可以通過 git log @{u}.. --oneline:

504318deMacBook-Pro ShixinDemo % git log @{u}.. --oneline 4e4655b (HEAD -> master) 攔截跳轉(zhuǎn) f947180 修改文件
登錄后復(fù)制

git log 非常強(qiáng)大,它可以有這些使用場景:

  1. 獲取本地和遠(yuǎn)端的 commit 差異
  2. 獲取指定時間內(nèi)的提交記錄,可以具體到誰、什么時候、修改了哪些
  3. 獲取具體某次提交修改的文件

上面我們使用的參數(shù) @{u}.. 就是表示獲取本地和遠(yuǎn)端的 commit 差異,然后 --oneline 表示不打印具體信息,只打印 short commit id 和 commit message。

如果要獲取指定時間內(nèi)的提交記錄,可以這樣:

git log --pretty="%an(%cd) %h - %s" --since="2022-09-01" --no-merges --name-status
登錄后復(fù)制

命令執(zhí)行結(jié)果:

504318deMacBook-Pro ShixinDemo % git log --pretty="%an(%cd) %h - %s" --since="2022-09-01" --no-merges --name-status zhangshixin(Fri Dec 16 22:34:49 2022 +0800) 4e4655b - 攔截跳轉(zhuǎn)  M       app/src/main/java/com/example/heicdemo/MainActivity.kt zhangshixin(Fri Dec 16 22:34:30 2022 +0800) f947180 - 修改文件  M       .idea/gradle.xml M       .idea/misc.xml D       .idea/runConfigurations.xml A       android10_dem_heic_output.heic A       app/src/main/assets/android10_dem_heic_output.heic R100    app/src/main/res/drawable/mushroom.jpg  app/src/main/assets/mushroom.jpg A       app/src/main/assets/mushroom.webp M       app/src/main/java/com/example/heicdemo/MainActivity.kt A       app/src/main/res/drawable/mushroom.webp M       app/src/main/res/layout/activity_main.xml
登錄后復(fù)制

pretty 的參數(shù)用于指定打印的內(nèi)容和格式;since 參數(shù)用于指定查看時間范圍;no-merges 表示過濾掉 merge 時生成的額外 commit;name-status 表示展示出文件的修改狀態(tài)(M 表示修改;D 表示刪除;A 表示增加;R 表示重命名)。

如何獲取每個 commit 修改的文件

知道 commit ID 后,可以通過 git show --pretty="" --name-only $commitId 獲取這個 commit 影響的信息:

04318deMacBook-Pro ShixinDemo % git show --pretty="" --name-only 4e4655b   app/src/main/java/com/example/shixindemo/MainActivity.kt
登錄后復(fù)制

git show 可以用來查看 commit 的 commit message 和修改的文件、文件具體內(nèi)容等信息。上面的代碼中我們使用了 name-only 參數(shù)表示只要查看修改的文件即可。

總結(jié)

這篇文章介紹了通過攔截 git push 時,獲取當(dāng)前用戶、當(dāng)前分支、未 push 的 commit 和修改的文件等命令,通過組合這些命令,就可以實現(xiàn)一個核心代碼保護(hù)功能了!

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
色呦呦网站一区| 97人人模人人爽人人少妇| 一二三四视频社区在线| 91精品国产综合久久久蜜臀粉嫩 | 欧美日韩免费精品| 黑人巨大精品欧美一区免费视频 | 日本一区免费看| 日韩欧美www| 国产成人免费在线观看| 91精彩刺激对白露脸偷拍| 日本成人激情视频| 国产精品美女久久久久aⅴ| 国产激情视频网站| 久久久久久久999| 国产人妖乱国产精品人妖| 欧美日韩综合一区二区| 91在线播放国产| 日韩电影中文字幕在线| 国产嫩草影院久久久久| 一级久久久久久| 午夜影院免费版| 日韩欧美亚洲精品| 亚洲精品999| 中文字幕一区二区5566日韩| 99久久久无码国产精品性| 欧美精品欧美精品| 在线免费观看成人短视频| 久久99精品国产麻豆婷婷洗澡| 99热6这里只有精品| 在线看成人av电影| 国产成人极品视频| 亚洲男人第一av网站| 欧美一区二区三区网站| 一二三av在线| 日本不卡久久| 国外视频精品毛片| 精品久久久久久久一区二区蜜臀| 欧美国产日韩亚洲一区| 国产农村妇女毛片精品久久| 国产伦理片在线观看| 日韩福利视频| 97热精品视频官网| 亚洲另类图片色| 一本到一区二区三区| 国产精品午夜在线| 国产综合久久久久影院| 久久久久成人精品无码| 欧美性生交xxxxx| 午夜肉伦伦影院| 91精品国产91久久久久久| 亚洲美女免费精品视频在线观看| 国产精品卡一卡二卡三| 丁香婷婷综合激情五月色| 婷婷久久久久久| av手机免费看| 看片网站在线观看| 中文字幕一区二区三区人妻不卡| 加勒比av中文字幕| 国产自产精品| 国产精品99久久久久久白浆小说| 国产精品久久久久久久久晋中| 91在线小视频| 久久久久久97三级| 91色视频在线| 国产午夜精品一区二区三区嫩草| 国产一区二区导航在线播放| 蜜桃久久av一区| 国模少妇一区二区三区| 免费的国产精品| 日本女人一区二区三区| 国产美女在线观看一区| 精品一区二区三区影院在线午夜| 四虎永久在线观看| 精品在线免费观看视频| 免费人成又黄又爽又色| 男人的天堂成人| 日韩av高清在线看片| www.日本xxxx| 无码人妻一区二区三区精品视频| 深爱五月综合网| 最近中文字幕无免费| 久久久噜噜噜www成人网| 日本福利视频一区| 国产99久久九九精品无码| 两根大肉大捧一进一出好爽视频| 人妻无码久久一区二区三区免费| 一二三四视频社区在线| 91超薄肉色丝袜交足高跟凉鞋| 美女又爽又黄免费| www.黄色在线| 日韩精品久久久久久免费| 一级黄色大片免费观看| 人禽交欧美网站| 亚洲av少妇一区二区在线观看| 日韩三级小视频| 午夜视频免费在线| 成人黄色网址在线观看| 一区二区三区在线免费视频| 欧美美女网站色| 国产一区二区三区在线免费观看| 欧美一区二区二区| 欧美videossexotv100| 欧美激情视频给我| 日本sm极度另类视频| 国产激情一区二区三区在线观看| 国产白丝袜美女久久久久| 亚洲av无码一区二区三区观看| 法国空姐电影在线观看| 日韩欧美视频网站| 国产精品一区二区在线免费观看| 欧美亚韩一区二区三区| 美女一区二区视频| 欧美色欧美亚洲高清在线视频| 色噜噜狠狠色综合网图区| 久久精品在线视频| 日韩高清专区| 日本少妇xxxxx| 日韩黄色小视频| 亚洲444eee在线观看| 日韩三级.com| 91九色综合久久| 日本少妇一区二区三区| 国产乱色精品成人免费视频| 中文一区二区在线观看| 7777精品伊人久久久大香线蕉的| 国产精品精品久久久| 欧洲精品毛片网站| 欧美一级黄色影院| 中日韩一级黄色片| 免费在线观看成人| 亚洲一区视频在线| 在线观看日韩电影| 97精品国产97久久久久久| 国产成人永久免费视频| 免费的av网站| 国产成人午夜高潮毛片| 欧美变态口味重另类| 57pao精品| 超碰91在线播放| 蜜臀a∨国产成人精品| 欧美一区二区女人| 欧洲s码亚洲m码精品一区| 精品成人av一区二区在线播放| 国产成人综合在线| 色一情一乱一乱一91av| 欧美一区二区三区在| www.日韩系列| 国产一级二级三级精品| 国产一区二区自拍| 黄色一级视频播放| 天天操天天干天天做| 国产综合欧美在线看| 精品视频无码一区二区三区| 99久久久国产精品无码免费| 无吗不卡中文字幕| 91精品国产99久久久久久红楼| 手机在线视频一区| 国产一区二区三区蝌蚪| 亚洲精品视频在线播放| 欧美一级视频在线观看| 久久免费视频2| 国产精品免费无遮挡无码永久视频| 亚洲综合激情小说| 国产精品久久久久一区二区| 四虎1515hh.com| 91首页免费视频| 国产97在线亚洲| 亚洲福利精品视频| 精品人妻一区二区三区日产乱码 | 久久久久国产精品麻豆| 国产深夜精品福利| 欧美精品一级片| 欧美一区二区三区在线看| 真人抽搐一进一出视频| 久久成人久久鬼色| 国产精品色视频| 精品成人无码久久久久久| 精品国产91乱高清在线观看 | 久久久久久久91| 国产福利精品一区二区三区| 26uuu另类欧美| 中文精品视频一区二区在线观看| 五月婷婷激情在线| 国产精品爽黄69天堂a| 99re这里只有精品在线| 欧美图区在线视频| 韩国一区二区在线播放| 一区二区高清免费观看影视大全| 国产精品第一视频| 中文字幕有码视频| 欧美在线一区二区视频| 国产浮力第一页| 2021国产精品视频| 国产精品欧美综合| 欧美日韩国产成人| 国产毛片毛片毛片毛片| 97超碰国产精品女人人人爽| 国产av一区二区三区精品| 日韩在线视频二区| 日本熟妇一区二区三区| 欧美成人免费一级人片100| 国产在线精品观看| 欧美大片在线看| 在线视频播放大全| 成人福利网站在线观看| 久久精品国产精品青草| 欧美福利一区二区三区| 久久久国产精品午夜一区ai换脸| 成人国产1314www色视频| 日韩国产欧美视频| 天天综合中文字幕| 在线中文字幕一区| 在线看免费毛片| 欧美成人三级在线| 日本熟妇乱子伦xxxx| 国产丝袜精品第一页| 日韩色图在线观看| 国内一区在线| 国产精品一二三四区| 自拍日韩亚洲一区在线| 欧美日韩日本视频| 成人免费毛片日本片视频| 久久久精品久久| 日本免费一区视频| 热99这里只有精品| 亚洲精品国产suv| 夜夜骚av一区二区三区| 91精品久久久久久久久久| 国产亚洲精品免费| 第一次破处视频| 亚洲免费视频网站| 人妻一区二区三区四区| 亚洲在线不卡| 91精品国产一区二区三区香蕉| 欧美日韩国产精品一区二区三区| 国产日韩精品入口| 国产精品麻豆欧美日韩ww| xx欧美撒尿嘘撒尿xx| 日韩在线观看高清| 国产伦精品一区二区三区视频痴汉 | 亚洲天堂免费看| 欧美做受喷浆在线观看| 日本中文字幕成人| 国产在线精品视频| 免费无码一区二区三区| 91精品国产综合久久香蕉最新版 | 日本精品免费观看| 中文字幕不卡三区| 成人黄色免费网址| 九九视频这里只有精品 | 中日精品一色哟哟| 成年人午夜视频在线观看| 欧美日韩爱爱视频| 国产精品福利影院| 偷偷操不一样的久久| avove在线观看| 日韩国产高清视频在线| 国产福利91精品| 国产精品99久久久久久成人| 欧美亚洲另类久久综合| 日韩精品在线免费| 99精品一区二区三区| 中文字幕人妻熟女在线| 九九精品在线观看| 亚洲第一久久影院| 88av在线视频| 中文字幕22页| 99在线高清视频在线播放| 日韩成人xxxx| 亚洲一区二区三区美女| 中文无码精品一区二区三区 | 精品一区二区日本| 操91在线视频| 久久久久中文| 成人观看免费视频| 神马影院我不卡| 国产91对白在线播放| 精品国产乱码久久久久久闺蜜 | 国产欧美日产一区| 最近中文字幕在线观看视频| 亚洲一区二区三区黄色| 在线看无码的免费网站| 国产精品黄视频| 日韩精品福利在线| 亚洲第一精品在线| 久久99精品久久久| 国产三级精品在线观看| 免费成人黄色大片| 日韩人妻一区二区三区蜜桃视频| 国产盗摄xxxx视频xxx69| 亚洲欧美在线一区| 亚洲欧美精品中文字幕在线| 国产精品羞羞答答xxdd| 日韩欧美三级视频| 中文字幕第10页| 国产对白在线播放| 99在线视频免费观看| 精品无码久久久久久国产| 91毛片在线观看| 久久久久久久高潮| 精品人妻伦一二三区久久| 伊人365影院| 日本aaa视频| b站大片免费直播| xxxwww国产| 日日碰狠狠添天天爽超碰97| 一本一本久久a久久精品综合妖精| 91精品在线影院| 91欧美激情另类亚洲| 秋霞午夜一区二区| 91国自产精品中文字幕亚洲| 久久影视电视剧免费网站| 中文字幕成人在线| 日韩最新在线视频| 亚洲美女动态图120秒| 国产亚洲精品日韩| 在线观看欧美成人| 亚洲精品乱码久久久久久金桔影视 | 日韩在线卡一卡二| 美女免费视频一区| 国产mv日韩mv欧美| 久久激情中文| 中文字幕69页| 国产精品久久久免费观看| 稀缺呦国内精品呦| 国产成人精品无码片区在线| 网站免费在线观看| a毛片毛片av永久免费| 欧产日产国产精品98| 中文字幕丰满孑伦无码专区| 国产三级视频网站| 成人免费黄色小视频| 亚洲欧洲综合网| jizz国产在线| 亚洲成人精品女人久久久| 亚洲图片小说视频| 国内老熟妇对白xxxxhd| 免费看的黄色网| 一级黄色av片| 丁香桃色午夜亚洲一区二区三区| 国产91精品露脸国语对白| 日韩美女久久久| 亚洲免费福利视频| 国产女精品视频网站免费| 欧美一二三区| 日韩成人av影院| 自拍偷拍校园春色| 国产一区不卡精品| 久久亚洲春色中文字幕久久久| 国产精品天美传媒| 欧美在线一二三四区| 久久精品视频亚洲| 久久99精品国产99久久| 色噜噜狠狠永久免费| 97伦伦午夜电影理伦片| 黄色av网站免费| 国产精品欧美经典| 精品美女一区二区| 亚洲一区二区三区毛片| 国产日产欧美视频| 国产午夜激情视频| 99国产精品一区| 日韩精品在线看| 欧美久久久久久| 国产精品视频看看| 喷白浆一区二区| 欧美三区在线视频| 成人妇女淫片aaaa视频| 欧美日韩激情四射| 精品在线观看一区| 超碰免费在线97| 久久综合色综合88| 欧美高清www午色夜在线视频| 成人精品福利视频| 人妻av一区二区三区| 天天综合网在线观看| 正在播放亚洲一区| 国产精品一区二区三区四区五区| 无码人妻一区二区三区免费n鬼沢 久久久无码人妻精品无码 | 日韩免费中文专区| 乳色吐息在线观看| 国产精品自拍在线| 色偷偷偷亚洲综合网另类| 91免费黄视频| 国产丝袜在线视频| 91精品国产综合久久久久久漫画| 日韩三级在线播放| 国产在线拍揄自揄拍| 国产精品视频一二三| 国产69久久精品成人| 国产免费无码一区二区| 久久99在线观看| 日韩一区二区在线看| 伊人久久大香线蕉av一区| 91欧美日韩麻豆精品| 欧美中文字幕亚洲一区二区va在线| 97超级碰碰人国产在线观看| 中文字幕线观看| 国产老妇另类xxxxx| 久久久久这里只有精品| 午夜理伦三级做爰电影| 国产精品免费网站在线观看| 国产综合福利在线| 成人自拍小视频| 黑人巨大精品欧美一区免费视频| 亚洲在线色站| 黄色小视频免费观看| 欧美成人精品激情在线观看| 在线免费黄色网| 国产香蕉久久精品综合网|