首页 > 其他分享 >git 使用教程

git 使用教程

时间:2024-03-18 10:45:31浏览次数:30  
标签:origin 教程 git master branch 使用 push 分支

0 写在前面

首先需要在电脑下载安装git,具体步骤不再赘述。

1 配置命令

查看密钥

cd ~/.ssh

若显示无法找到该文件则当前电脑没有ssh密钥,需要创建新的ssh key。

注:在Windows系统下的位置即为“C:\Users[用户名]”文件夹。

生成密钥

ssh-keygen -t rsa -C "[email protected]"

执行这条命令会如上图提示文件保存路径,可以直接按Enter。

然后提示输入 passphrase(密码),输入两次(可以不输直接两次Enter)。


然后会在~/.ssh 目录生产两个文件:id_rsa和id_rsa.pub,分别对应私钥和公钥,私钥只在自己电脑保存,公钥是可以复制出来配置到git服务器的,比如Github或Gitee等,这样就在自己的电脑和git服务器之间建立了连接,诸如git push或git clone等命令就不再要求密码验证。
以Github为例,点击Settings-SSH and GPG keys-New SSH key,把id_rsa.pub中的内容复制进去即可。

设置基本信息

git config --global user.name "[具体的用户名]"
git config --global user.email "[具体的邮箱]"

设置自己的git信息即完成安装和设置,可以输入git config --list查看自己的git信息。

2 git操作

仓库初始化

git init
git add -A
git commit -m "init"
git remote add origin https://github.com/XXX.git
git push -u origin master

推送本地分支到远程分支并建立关联

  • 远程已有remote_branch分支,且已经关联本地分支local_branch,且本地已经切换到local_branch

    git push
    
  • 远程已有remote_branch分支,但未关联本地分支local_branch,且本地已经切换到local_branch

    git push -u origin/[remote_branch]
    
  • 远程没有remote_branch分支,且本地已经切换到local_branch

    git push origin [local_branch]:[remote_branch]
    

合并开发分支和主分支

  • 开发分支(dev)上的代码达到上线的标准后,要合并到master分支

    git checkout dev
    git pull
    git checkout master
    git merge dev
    git push -u origin master
    
  • 当master代码改动,需要更新开发分支(dev)上的代码

    git checkout master 
    git pull 
    git checkout dev
    git merge master 
    git push -u origin dev
    

删除远程仓库文件

项目开发初期可能由于.gitignore文件配置不正确导致一些不需要的文件上传到远程仓库了,解决办法如下。

  • 预览要删除的文件列表,加上-n参数时只是预览而不会真正删除

    git rm -r -n --cached 文件/文件夹名称
    
  • 确定无误后删除文件

    git -rm -r --cached 文件/文件夹名称
    
  • 提交到本地并推送到远程服务器

    git commit -m "提交说明"
    git push origin master
    

注:最后记得修改.gitignore文件。

3 疑难问题

git clone输入密码错误之后不再弹出输入框

参考资料

git bash安装和基本设置 - JasonXu_徐晓峰的博客 - 博客园
git merge最简洁用法-CSDN博客
git 删除远程仓库文件

标签:origin,教程,git,master,branch,使用,push,分支
From: https://www.cnblogs.com/flyrabbit/p/18079841

相关文章

  • switch使用和购买指南
    switch版本:23款日版OLED机身内存大小:64GSD卡大小:512G一、switch知识点扫盲1、switch版本和购买推荐?Switch有续航版、OLED、Lite版三个,分别如下:1️⃣续航版小白首选,性价比高,但屏幕抗反射性差。......
  • SQL 查询优化之 WHERE 和 LIMIT 使用索引详解
    奇怪的慢sql我们先来看2条sql第一条:第二条:表的索引及数据总情况: 索引:acct_id,create_time分别是单列索引,数据库总数据为500w。通过acct_id过滤出来的结果集在1w条左右。 查询结果:第一条要5.018s,第二条0.016s为什么会是这样的结果呢?第一,acct_id和create_time都有索引,不......
  • 3.3 RK3399项目开发实录-板载Ubuntu系统的使用(物联技术666)
    嵌入式物联网常用90款传感器开发例程。链接:https://pan.baidu.com/s/1oisHMZXDzKqa4EspY83V-A?pwd=o5f41.介绍Ubuntu使用手册是针对Firefly官方发布的Ubuntu系统固件特性所编写,适用于UbuntuDesktop与Minimal系统,部分与UI显示相关的介绍,只针对Desktop系统。......
  • 3.3 RK3399项目开发实录-板载Ubuntu系统的使用(wulianjishu666)
    嵌入式物联网常用90款传感器开发例程。链接:https://pan.baidu.com/s/1oisHMZXDzKqa4EspY83V-A?pwd=o5f41.介绍Ubuntu使用手册是针对Firefly官方发布的Ubuntu系统固件特性所编写,适用于UbuntuDesktop与Minimal系统,部分与UI显示相关的介绍,只针对Desktop系统。......
  • 《手把手教你》系列技巧篇(四十)-java+ selenium自动化测试-JavaScript的调用执行-下篇(
    1.简介 在实际工作中,我们需要对处理的元素进行高亮显示,或者有时候为了看清楚做跟踪鼠标点击了哪些元素需要标记出来。今天宏哥就在这里把这种测试场景讲解和分享一下。2.用法创建一个执行JS的对象,也就是JavascriptExecutor对象,这个对象是由driver进行强制类型转......
  • Navicat 16 注册教程
     下载NavicateCracker.exe:https://files.cnblogs.com/files/blogs/667310/NavicatCracker.zip?t=1710724387&download=trueNavicat16注册教程 先断网!先断网!!先断网!!!1)以管理员身份运行注册机。2)点击··,选择实际安装目录,再点击`Patch` 正常弹出下面......
  • 使用 LogProperties source generator 丰富日志
    Nuget包 Microsoft.Extensions.Telemetry.Abstractions包含的新的日志记录sourcegenerator,它支持使用[LogProperties]将整个对象作为State与日志一起记录。我将展示一种方法来控制如何使用[LogProperties]对象自动丰富日志。示例您可以使用日志sourcegenerator创建一个如下......
  • FreeRTOS教程6 互斥量
    1、准备材料正点原子stm32f407探索者开发板V2.4STM32CubeMX软件(Version6.10.0)KeilµVision5IDE(MDK-Arm)野火DAP仿真器XCOMV2.6串口助手2、学习目标本文主要学习FreeRTOS互斥量的相关知识,包括优先级翻转问题、优先级继承、死锁现象、创建/删除互斥量和获取/释放互斥......
  • 如何使用 c 语言进行文件读取存储
    #include<stdio.h>//读取文件内容的函数voidreadFile(constchar*fileName){  FILE*file=fopen(fileName,"r");  if(file==NULL){    printf("无法打开文件\n");    return;  }  charline[100];  while(fgets(lin......
  • 实用crontab教程-一文读懂crontab
    文章目录Crontab是什么类似的工具有哪些Systemd(systemctl)Upstart(initctl)SysVinit(/etc/init.dscripts)作用用途:crontab的配置文件格式crontab表达式检查工具CrontabGuru:CronMaker:CronTabTool:运行身份原理:指定以特定用户身份运行:使用用户的crontab:使用系......