通常都是到專案的資料夾內,下 git pull 來更新內容。
但是若想要在任何地方,直接想要指定資料夾去做 git pull 要怎麼做呢?
Git Pull 指定資料夾
想要 auto pull 或者在自己機器,想要遠端執行 git pull,不切換資料夾,直接 git pull 的作法~
- 可以使用 git -C 的命令:git -C /var/www/project pull # 在 /var/www/project 執行 git pull
想要遠端直接執行:
- ssh machine "sudo su -l www-data -c 'git -C /var/www/project pull'"
於 sudo 限制某些人可以指定 www-data 來做 git pull:
- sudo 切換 user (visudo)
- user ALL=NOPASSWD: /bin/su - www-data
- sudo 切換 user 執行 git pull 動作
- sudo visudo # 要指定資料夾 git pull
- user ALL=NOPASSWD: /bin/su -l www-data -c git -C /var/www/project pull