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

Git从入门到工作流:GitLab私有仓库最佳实践(SSH免密、.DS_Store全局忽略)

本文将带你从零开始配置GitLab私有仓库,涵盖SSH密钥免密登录、本地仓库初始化与推送、以及macOS下.DS_Store文件的全局忽略与清理。每一步都有命令和解释,适合新手和想规范Git工作流的开发者。


一、注册GitLab账号并创建私有仓库

1. 注册账号

  • 访问 GitLab.com(注意:不要使用极狐GitLab gitlab.cn,两者账号不互通)。
  • 推荐使用Gmail或其他国际邮箱,QQ邮箱也可以。
  • 注册后登录。

2. 创建私有仓库

  • 点击右上角New projectCreate blank project

  • 填写项目信息:

    • Project name:例如my-noteslinux-network-lab
    • Project slug:自动生成,保持默认即可
    • Visibility Level:选择Private(私有仓库,仅自己可见)
  • 取消勾选Initialize repository with a README(如果本地已有代码,不要初始化README,避免冲突)。

  • 点击Create project

创建成功后,页面会显示后续需要用到的Git命令。


二、配置SSH密钥(免密登录)

使用SSH密钥可以避免每次git push时输入用户名和密码。

1. 生成SSH密钥(在Mac/Linux终端执行)

# 推荐 ED25519 算法(安全性高,性能好)ssh-keygen-ted25519-C"your_email@example.com"# 或者使用 4096 位 RSAssh-keygen-trsa-b4096-C"your_email@example.com"
  • 一路回车,使用默认路径(~/.ssh/id_ed25519~/.ssh/id_rsa
  • 可以不设置密码(留空直接回车)

2. 将公钥添加到GitLab

  • 查看公钥内容:

    cat~/.ssh/id_ed25519.pub
  • 复制输出的全部内容(以ssh-ed25519开头,以邮箱结尾)

  • 在GitLab网页:

    • 点击右上角头像 →PreferencesSSH Keys(左侧菜单)
    • 将公钥粘贴到Key文本框
    • Title任意起名(如“My Mac”)
    • 点击Add key

3. 测试SSH连接

ssh-Tgit@gitlab.com

如果看到Welcome to GitLab, @用户名!,说明配置成功。


三、本地仓库初始化并推送代码

1. 配置Git身份信息(每个仓库独立配置,也可全局)

gitconfig--localuser.name"你的用户名"gitconfig--localuser.email"你的邮箱@example.com"

2. 三种常见场景的推送方式

场景一:本地还没有Git仓库(全新开始)
# 克隆空仓库(会自动创建项目文件夹)gitclone git@gitlab.com:username/my-project.gitcdmy-projectgitswitch--createmaintouchREADME.mdgitaddREADME.mdgitcommit-m"add README"gitpush --set-upstream origin main
场景二:本地已有代码文件夹(未初始化为Git仓库)
cdexisting_foldergitinit --initial-branch=main --object-format=sha1gitremoteaddorigin git@gitlab.com:username/my-project.gitgitadd.gitcommit-m"Initial commit"gitpush --set-upstream origin main
场景三:本地已有Git仓库,想更换远程地址
cdexisting_repogitremoterenameorigin old-origingitremoteaddorigin git@gitlab.com:username/my-project.gitgitpush --set-upstream origin--allgitpush --set-upstream origin--tags

推送成功后,刷新GitLab页面即可看到上传的文件。


四、优雅处理 .DS_Store 文件(macOS用户必看)

.DS_Store是macOS自动生成的隐藏文件,用于存储文件夹的显示偏好。它不应该被Git跟踪。

1. 配置全局忽略规则(推荐,一劳永逸)

在终端执行:

# 创建全局忽略文件并加入 .DS_Storeecho".DS_Store">>~/.gitignore_global# 告诉Git使用这个全局忽略文件gitconfig--globalcore.excludesfile ~/.gitignore_global

验证配置:

gitconfig--globalcore.excludesfile# 应输出: /Users/你的用户名/.gitignore_global

2. 清理已被Git跟踪的 .DS_Store 文件

如果之前已经提交过.DS_Store,需要从仓库中移除(但保留本地文件)。

进入你的Git仓库目录,执行:

# 递归移除所有 .DS_Store 的跟踪find.-name.DS_Store-print0|xargs-0gitrm--cached--ignore-unmatch# 提交变更gitadd.gitcommit-m"chore: 移除并忽略 .DS_Store 文件"# 推送到远程gitpush origin main

3. 针对VMware共享文件夹的特殊情况

如果你在Linux虚拟机中通过VMware共享文件夹操作Git仓库,可以在仓库根目录创建.gitignore文件:

cd/mnt/hgfs/your-projectecho".DS_Store">>.gitignoregitadd.gitignoregitcommit-m"chore: 忽略 .DS_Store 文件"gitpush origin main

完成后,git status将不再显示.DS_Store,仓库保持干净。


五、总结

通过以上步骤,你已经掌握了:

  • GitLab私有仓库的创建与SSH免密配置
  • 本地代码推送到远程的标准流程
  • 跨平台(特别是macOS)下.DS_Store文件的正确忽略方法

这套工作流适合个人笔记、代码练习、开源项目等多种场景。接下来,你可以放心地使用Git管理你的所有学习代码和博客草稿。


下一篇预告

下一篇将进入网络编程实战:从socketepoll,手写一个 Reactor 模型的高性能服务器,欢迎关注。

如果你在配置中遇到问题,欢迎留言交流。


📚 系列文章推荐

  • 上一篇:[M4 Mac mini 安装 Linux 虚拟机] —— 搭建 Ubuntu ARM64 开发环境,解决共享文件夹自动挂载、SSH 免密、VSCode 远程开发等痛点。

本文所有命令均已在macOS + GitLab.com 环境下验证,可放心使用。

http://www.jsqmd.com/news/866390/

相关文章:

  • 交互形态的深层迭代:从文本到具象化表达
  • 松滋市黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • 赣州各区房屋反复漏水真实原因解析:多数维修问题出在工艺匹配度 - 鲁顺
  • 终极硬件监控指南:用FanControl彻底掌控你的电脑散热系统
  • 丰满区黄金回收白银回收铂金回收店铺哪家好 靠谱门店推荐 - 莘州文化
  • 硚口区黄金回收白银回收铂金回收店铺哪家好 靠谱门店推荐 - 莘州文化
  • 5分钟掌握OpenUtau多语言歌唱:让虚拟歌手唱遍全球[特殊字符]
  • 飞机在甲板上着陆--动基线RTK深度解析:定义、应用场景和基本原理(二)
  • 龙圩区黄金回收白银回收铂金回收店铺哪家好 靠谱门店推荐 - 莘州文化
  • 找冷库冷链设备五金配件怕踩坑,源头厂家给你实用选型参考 - 品牌企业推荐师(官方)
  • 238.载波跟踪环costas环中鉴相器的位宽和环路带宽分别影响什么,需要如何调节
  • Sora 2提示词到底怎么写才不出图?——基于1,843组AB测试数据的因果归因分析
  • 孝昌县黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • 公主岭市黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • 独立开发者如何通过Taotoken Token Plan套餐降低AI实验成本
  • 孝南区黄金回收白银回收铂金回收店铺哪家好 靠谱门店推荐 - 莘州文化
  • DeepStream9.0 service-maker
  • 龙州县黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • 全系列工业仪器仪表源头厂家怎么选?2026年核心评判维度深度解析 - 科技焦点
  • 和龙市黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • 石首市黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • GE 在 CANN 五层架构中的位置
  • 3个步骤快速掌握Py Eddy Tracker:海洋中尺度涡旋识别与追踪的完整解决方案
  • 电影学院不教的真相:AI视频生成已重构分镜脚本标准(含2024戛纳获奖短片分镜→AI提示词双向映射表)
  • 九台区黄金回收白银回收铂金回收店铺哪家好 靠谱门店推荐 - 莘州文化
  • 告别vcvars.bat!在VS2022中创建一键配置编译环境的快捷方式(支持所有终端)
  • 隆安县黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化
  • 数字人场景落地:健康服务从文字交互到具身数字员工
  • taotoken 的 openai 兼容协议让模型切换几乎无需修改代码
  • 临江市黄金回收店铺哪家好 靠谱门店推荐及联系方式 - 莘州文化