假设工作区所在目录为 /home/linyihai/workspace
本地git仓库为/home/linyihai/atc-testcase
那么可以在工作区目录执行:
GIT_DIR=home/linyihai/atc-testcase/.git git pull
注意:git add 如果使用这种方式,git clone远端仓库时,会出现这样的问题:
假设远端仓库名称为:atc-testcase
使用git clone命令克隆远端仓库到本地路径下,克隆下来的本地仓库
会变成 atc-testcase/atc-testcase,即出现双层仓库的路径,外面的仓库时真正的git 仓库,内部atc-testcase只是包了仓库文件的文件夹
所以必须真正切换到git 仓库中执行git add命令才不会出问题
在python 工程中,可以这样执行:
1 def run_suprocess_cmd(cmd):
2 p = subprocess.Popen(cmd, shell=True,stdout=subprocess.PIPE,stderr=subprocess.STDOUT)
3 for line in p.stdout.readlines():
4 logger.debug(line)
5
6 git_prefix = 'GIT_DIR=' +'/home/linyihai/atc-testcase' + '/.git '
7 git_add = git_prefix + "git add --all "
8 current_work_path = os.path.dirname(os.path.abspath(__file__)) #先保存当前工作目录
9 os.chdir('/home/linyihai/atc-testcase') #切换到git 仓库路径去
10 run_suprocess_cmd(git_add) #执行git命令,使用模块subprocess.Popen执行git add命令
11 os.chdir(current_work_path) #执行完后切换回当前工作目录
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署