git github仓库管理

原文链接:git github仓库管理

拉取镜像

github的仓库有两种下载方式,http和ssh,http是对外公开的,可以直接clone,ssh的一般是自己的或内部的仓库,仓库需要配置ssh-key才能使用git@ clone.

或者直接网页下载

shell 复制代码
#https
git clone https://github.com/git/git.git
#ssh
git clone git@github.com:git/git.git

创建镜像修改可见性

创建自己镜像时选择一个license,一般默认是公开的,在仓库的settings选择DangerZone/Change repository visibility修改为private就只有自己能查看了

git配置

github 配置ssh

ssh-keygen rsa -t 生成key 在~/.ssh/目录看到id_rsa.pub是ssh公钥 ,在github/settings的ssh创建一个新ssh key粘贴

git参数配置

git需要配置用户的一些参数

shell 复制代码
#配置用户名和邮箱
git config --global user.name "XXX" 
git config --global user.email "XXX@gmail.com"
git config --global init.defaultBranch main

仓库管理

分支管理

shell 复制代码
git branch [-a][-r]  #查看分支 不加查看本地,-r远程,-a所有
git checkout -b b1 #创建并切换分支
git branch -M main #设置主分支
git checkout main && git merge b1 #切换main,将b1合并到main
git branch -d b1 #删除本地分支
git push origin --delete b1 #删除远程分支
git tag -a X.X.X -m "XXXX" # 本次提交的标签,例如新的release  git tag -a v1.0 -m "Initial release"
  1. 主分支(main/master):存储生产代码。
  2. 开发分支(develop):存储即将发布的代码。
  3. 功能分支(feature/xyz):从 develop 分支创建,用于开发新功能。
  4. 发布分支(release/X.X.X):从 develop 分支创建,用于准备发布。
  5. 热修复分支(hotfix/X.X.X):从 main 分支创建,用于紧急修复生产问题。

release和feature从develop分出的,是新开发的,完成后需要合并到main和develop,然后删除

hotfix直接合并到main

文件管理

shell 复制代码
git ls-files #查看文件
git rm -r --cached . #删本地库文件但是不删实际文件
git rm -rf . #删除全部实际文件
git add . #添加全部文件到本地库

提交

shell 复制代码
git commit -m "XXXX" #提交
git push origin main # origin为远程仓库,main为远程分支 --tags推送所有tag, 或指定tagname
相关推荐
海棠蚀omo14 分钟前
Linux信号保存的核心:未决信号集与阻塞信号集——探秘内核如何实现信号的阻塞、暂存与派发
linux·操作系统
芝麻开门-新起点36 分钟前
数据脱敏与自动化技术融合:大规模GIS数据安全高效处理方案
运维·自动化
行走正道38 分钟前
【探索实战】跨云应用分发自动化实战:基于Kurator的统一交付体系深度解析
运维·自动化·wpf·kurator·跨云分发
傲世(C/C++,Linux)1 小时前
Linux系统编程——TCP服务器
linux·服务器·tcp/ip
杨云龙UP2 小时前
SQL Server 备份异地同步 + 清理脚本
运维·服务器·数据库·sql·mysql·sqlserver
q***48412 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
橘子真甜~3 小时前
C/C++ Linux网络编程8 - epoll + ET Reactor TCP服务器
linux·服务器·网络
万变不离其宗_83 小时前
centos 手动安装redis
linux·redis·centos
_lst_3 小时前
linux进程状态
linux·运维·服务器
霍格沃兹测试开发学社-小明3 小时前
AI来袭:自动化测试在智能实战中的华丽转身
运维·人工智能·python·测试工具·开源