国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

git 系統(tǒng)中 post-receive 鉤子不能正常執(zhí)行 git pull 解決方法

2024-08-27 23:58:42
字體:
供稿:網(wǎng)友

今天在 git 版本控制系統(tǒng)中出現(xiàn) post-receive 鉤子不能正常執(zhí)行 git pull 的操作,折騰了好久才發(fā)現(xiàn)是 git 的鉤子在運(yùn)行的時候會調(diào)用 GIT_DIR 這個環(huán)境變量,下如來記錄如何解決這個問題的方法.

有一個需求是本地git在push到遠(yuǎn)程 git repo 之后,在遠(yuǎn)程服務(wù)器上自動在/dir/foo下執(zhí)行 git pull 的操作,想來是一個很簡單的需求,不就是在遠(yuǎn)程的 foo.git 倉庫中的 hook 里加一個 post-receive 的鉤子,然后在鉤子里加入一個 git pull 的操作,但是實際操作的時候發(fā)現(xiàn)有問題的,因為這樣忽略了一個小細(xì)節(jié)的問題.

操作之前,頭腦里想的代碼如下:

  1. #!/bin/sh 
  2. cd /var/git/web3/etc/puppet 
  3. /usr/bin/git pull 

用這個代碼在 git push ssh://git@ownlinux.org:/opt/foo.git 之后,發(fā)現(xiàn)遠(yuǎn)程服務(wù)器上的 /dir/foo 目錄下并沒有成功 pull 到最新的數(shù)據(jù),并且終端上也有報錯(remote: fatal: Not a git repository: ‘.’),后面發(fā)現(xiàn) git 的鉤子在運(yùn)行的時候會調(diào)用 GIT_DIR 這個環(huán)境變量,而不是PWD 這個,所以在 git pull 的時候提示 Not a git repository: ‘.’,其中 “.” 正是 GIT_DIR 這個環(huán)境變量的值.

鉤子的代碼改成下面的之后,運(yùn)行正常了:

  1. #!/bin/sh 
  2. unset $(git rev-parse --local-env-vars) 
  3. cd /var/git/web3/etc/puppet 
  4. /usr/bin/git pull 

使用 git 做版本控制的朋友希望你不要和我一樣忽略這個小細(xì)節(jié)的問題.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 逊克县| 法库县| 临沂市| 肥乡县| 集安市| 延川县| 盐源县| 防城港市| 攀枝花市| 出国| 南宁市| 兰坪| 河北省| 泰顺县| 离岛区| 陇川县| 肇庆市| 东平县| 交城县| 泽库县| 宜昌市| 枝江市| 潞西市| 监利县| 吴忠市| 南皮县| 蓝山县| 潜江市| 丰顺县| 揭西县| 开封县| 芦溪县| 合肥市| 万山特区| 迭部县| 麻城市| 天水市| 怀仁县| 翁牛特旗| 岑巩县| 盐城市|