当前位置: 首页 > ai >正文

Clion远程开发git触发“No such device or address”的解决方案

项目场景

环境:

  • 本地开发机: macos + CLion 2023.1.7
  • 远程开发机: Parallels Desktop for mac 20 + Ubuntu20.04 arm64
  • 项目类型:C++ CMake 工程,依赖通过 FetchContent 从私有 Git 仓库拉取的子模块

关键配置:
子工程通过 CMakeLists.txt 动态拉取,配置如下:

FetchContent_Declare(子工程GIT_REPOSITORY    http://xxxxxx.git   # 实际为私有仓库地址GIT_TAG           分支名              # 如 dev/mainGIT_SHALLOW       TRUE                # 仅拉取最新提交SOURCE_DIR        ${3RDPARTY_DIR}/子工程  BINARY_DIR        ${3RDPARTY_DIR}/子工程/build
)
FetchContent_MakeAvailable(子工程)

问题描述

现象:

  • ✅通过终端 SSH 连接远程主机,手动执行 cmake 编译成功。
  • ❌通过 CLion 远程开发模式执行 CMake 时失败,报错:
fatal: could not read Username for ‘https://x.x.x’: No such device or address

关键矛盾:
CLion 远程模式下 CMake 进程无法通过 Git 获取私有仓库的身份认证信息。


解决方案:

  1. 配置 Git 全局凭据存储
    在远程主机(Ubuntu)中执行:
git config --global credential.helper store
  1. 手动触发凭据缓存
    在远程主机中手动拉取一次子工程​:
git clone http://xxxxxx.git  # 使用实际仓库地址

按提示输入用户名和密码后,凭据会被记录到 ~/.git-credentials。

  1. 验证CLion远程编译
    重新通过 CLion 执行 CMake 构建,此时:CMake 调用 Git 拉取代码, Git 自动从 ~/.git-credentials 读取凭据, 子工程拉取成功,编译流程正常完成。
http://www.xdnf.cn/news/5651.html

相关文章:

  • C++ 的 VS 项目中引入跨平台包管理工具 conan
  • IDEA 插件推荐:提升编程效率
  • P1874 快速求和
  • 笔记本电脑升级实战手册[3]:扩展内存与硬盘
  • Matlab 234-锂电池充放电仿真
  • 在 .NET 8 开发的WinForms 程序中展示程序版本号的几种方式
  • 运行Spark程序-在Idea中(二)
  • 汽车紧固件涂层18问:看敦普无铬锌铝涂料如何为螺丝防锈防腐
  • 多重背包、分组背包、混合背包和多维背包
  • 交易所开发-如何开发一个交易所
  • 【C语言】宏经典练习题,交换奇偶位
  • 直播:怎样用Agentic AI搭建企业AI应用?5.24日,拆解新一代“智能客服系统”案例
  • GitDiagram - GitHub 仓库可视化工具
  • 神经网络初步学习——感知机
  • EnumUtils:你的枚举“变形金刚“——让枚举操作不再手工作业
  • 第六章 Java基础-方法
  • 基于STM32、HAL库的BMP388 气压传感器 驱动程序设计
  • HTTP方法和状态码(Status Code)
  • 在Linux中安装JDK并且搭建Java环境
  • 数据处理专题(十三)
  • 讲讲git 和svn
  • HTML5 定位详解:相对定位、绝对定位和固定定位
  • 155.最小栈
  • 【科研】Visio使用
  • 数据同步DataX任务在线演示
  • 码蹄集——人民币大写数字、全部整除、隐晦余8
  • 嵌入式学习笔记 - MSB, LSB
  • 24 小时 AI 门店管家:重新定义连锁门店智能化管理范式
  • 从模型加密到授权交付,CodeMeter赋能3D打印商业化全流程
  • Ubuntu源码版comfyui的安装