首页 > 其他分享 >git 命令操作总结

git 命令操作总结

时间:2023-10-21 16:06:31浏览次数:35  
标签:总结 HEAD git -- 命令 github 版本 push

公共技术:

H5、C3:基本上公共;后台会看懂,前端会精通,精通到纳米级别;

Sql:数据库;前端 CRUD;后端查询、存储过程 分库分表等等;

linux:前后端要会了解基本的命令;用的最多的运维;上线了,运作+维护 12306

git:公共的技术点;

git 命令操作总结

git: 分布式 版本 控制工具 (项目代码的维护管理 以及 团队协作开发,项目的历史版本穿梭 互相分享共享)

GitHub 平台 全球国际化平台网站: GitHub.com 程序员交友平台(基友平台)有名的框架和库 都在github有自己的官方存储 (源码)

国内 码云 give.com 中文版

SVN & GIT 版本控制工具

1.安装git

  • linux(Ubuntu) : sudo apt-get intall git

    终端输入git 如果有提示证明安装成功

  • window版本===》git软件工具—-安装 powershell cmder git bash

  • Mac Os—-terimal (自带终端) 第三方的终端工具 iterm2

2.git简介

  • git ——分布式的版本控制工具

    现代化的代码版本控制工具 git  svn
    
    作用:对你的代码/项目的版本进行管理 (版本的更新 历史记录  回滚   删除的文件    多人协作  
    
    gitlab  公司内部服务器上搭建的版本控制系统 (git)
    
    github:全球级别的社交网站(git版本控制系统+程序猿交友平台 互相分享和学习对方代码)
    号称 全球最大的基友平台
    
    很多全世界范围优秀的框架和库 都在github有 官方存储的仓库
    开源:github是一个网站 (git)
    开源的生态系统:Android  
    
    git svn 是两种不同的代码版本控制方式
    git:分布式的版本控制系统
    svn:集中式的版本控制系统
    

2.git单人操作

  • 2.1 创建空的git仓库: git init

    仓库:放置我们项目的地方,本地仓 远程仓

    会看到git隐藏的目录,有我们操作的配置信息等

    提示: git仓库和项目的根路径在一起,用来管理项目

  • 2.2 配置git提交的用户名,邮箱或config --global 全局,邮箱保持一致

  • git config user.name 'zhangsan' 当前目录

    例如: git config --global user.name 'zhangsan' --global 全局,整个系统

    邮箱注册:远程仓库保持一致

             git config --global user.email '[email protected]'

  • 2.3 查看文件状态: git status

    工作区:理解为当前仓库项目,工作的地方

    暂存区:???

    红色: 表示新建文件, 或者新修改了文件,目前位于工作区中

    绿色: 表示文件在暂存区

  • 2.4将工作区代码, 添加到暂存区(工作区-->暂存区)

  • 例如: git add . 注意此处

          git add xxx.html

    点表示添加所有变动, xxx.html表示指定文件

  • 2.5将工作区代码,添加到仓库区(暂存区—>仓库区)

  • 例如: git commit -m 'first'

  • 2.6将工作区,直接添加到仓库区(工作区-->暂存区—>仓库区)

  • 例如: git commit -am '注释信息'

  • 2.7查看版本历史

    例如: git log 查看版本的详细信息

          git reflog 查看版本的大致信息

    log查看详细信息, reflog查看简要信息

  • 2.8回退版本

    例如: git reset --hard HEAD

    或者: git reset --hard 版本号

    HEAD表示当前最新版本

    HEAD^表示当前最新版本的, 上一个版本

    HEAD^^表示当前最新版本的, 前两个版本, 依次类推

    HEAD~1 表示当前最新版本的, 上一个版本

    HEAD~2 表示当前最新版本的, 前两个版本, 依次类推

  • 2.9撤销工作区,暂存区修改

    文件从暂存区撤销到工作区: git checkout 文件名

    撤销暂存区:

                      git checkout HEAD 文件名 (暂存区-工作区)                  

    仓库区代码不能撤销

  • 2.10 版本对比

    例如: git diff HEAD HEAD^ -- xxx.py

    HEAD表示当前版本, HEAD^表示上个版本, xxx.html对比的文件

  • 2.11误删除文件,恢复

    ​ 这个是提交之后还存在于本地;

    格式1: rm --cached 测试文件名

    恢复1: git checkout -- 文件名

    ​ 提交之后,就删除了

    万一 误入到linux(git 操作命令里面)界面,退出,方案退出:shift+;

    左下角出来:wq! 或者qa!退出。

    格式2: git rm 文件名

    恢复2: git reset --hard HEAD^

// 将我本地的代码目录 和 远程的github仓库 建立起连接 并且推送代码到网站平台当中

// 1 github 注册好账号 登陆进去
// 2 建立一个仓库 不用初始化设置 readme.md  协议
// 3 在本地项目当中执行以下命令
	git remote add origin [email protected]:ZaGCool/fe11_demo.git
  git branch -M main
  git push -u origin main

3.git多人操作

  • 3.1 clone项目到本地

    例如: git clone 项目地址

  • 3.2 推送项目到远程仓库

    push 推

    sz666

    提交: git push ‘远程仓库地址' 本地仓库名

    远程仓库名比较长;

    git remote add '别名' 远程仓库地址

    git push 别名 本地主分支

    第一次推送会提示输入账号, 密码

  • 3.3 配置是否输入登陆密码信息

    git config --global credential.helper cache 十五分钟有效期

    git config credential.helper 'cache --timeout==3600' 一个小时有效期

    git config --global credential.helper store 长期有效

  • 3.4 拉取远程最新代码到本地

    现在用的是github,用gitee,区别是什么???

    例如: git pull 远程仓库名|别名 本地仓库名

    image-20210812120616066

4.标签

  • 4.1 设置本地标签

    例如: git tag -a 标签名 -m '标签描述'

  • 4.2 推送本地标签到远程

    例如: git push origin 标签名

  • 4.3 删除本地标签

    例如: git tag -d 标签名

  • 4.4 删除远程标签

    例如: git push origin --delete tag 标签名

5.分支

  • 5.1查看当前分支

    例如: git branch

  • 5.2创建本地分支,并切换到指定分支

    git branch new分支

    例如: git checkout -b 分支名

  • 5.3推送本地分支,到远程

    例如: git push -u origin 分支名

  • 5.4切换分支

    例如: git checkout main / dev

    各个分支,提交自己的内容;

    切换到主分支,或者是其他分支

    其他用户第一次pull代码后,切换后才能使用git branch查看

  • 5.5合并子分支到主分支 小王--dev 主管 dev开发好的代码==合并到主分支(master)

    例如: git merge 分支

    需要在master分支下操作该命令

    合并之后git branch -d xx分支

么有合并删除git branchd -D xx分支

  • 5.6存放到暂存区git stash;没有问题了,继续返回文件git stash pop;
多人解决冲突
多人协作解决冲突

  在github上添加多人协作,Collaborators==》添加账号

  当push的时候发现冲突  
  一	git fetch:  同步过来远端文件 
  	然后可已查看 并且可以手动合并
  	然后在进行提交 ,再push到远端=( git push origin main 同步到远程的仓库)
  		git diff main origin/main  查看
  		git merge origin/main   合并一下,之后再取舍,在进行一次提交
  
  git fetch
  git diff main origin/main
  git merge origin/main  -m ""
  改完之后在push
  二	git pull origin master 拉取过来之后直接合并

cd ~/.ssh
ls  或者 ll
看是否存在 id_rsa 和 id_rsa.pub文件,如果存在,说明已经有SSH Key

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

cat id_rsa.pub
//拷贝秘钥 ssh-rsa开头

新建一个SSH Key
取个名字,把之前拷贝的秘钥复制进去,添加就好啦。
验证: ssh -T [email protected]

之前已经是https的链接,现在想要用SSH提交怎么办? 直接修改项目目录下 .git文件夹下的config文件,将地址修改一下就好了

github ===> 新建仓库
本地: git clone https://github.com/ZaGCool/jd_demo.git

忽略文件的设置  git目录下 新建一个隐藏文件  .gitignore  ==>里面写上你不想提交到github的文件名称或者目录名称

添加一个README.md  说明md文件  会在github上面直接显示

每天下班 push
每天上班 先pull 拉过来  

解决冲突  git fetch /    git pull

标签:总结,HEAD,git,--,命令,github,版本,push
From: https://blog.51cto.com/teayear/7967368

相关文章

  • Redis 命令操作
    一、连接命令ping通常用于测试与服务器的连接是否仍然生效,或者用于测量延迟值。如果连接正常就返回一个PONG,否则返回一个连接错误。127.0.0.1:6379>pingPONGechom打印一个特定的信息m,测试时使用。127.0.0.1:6379>echo'helloworld'"helloworld"selecti切换......
  • 逻辑卷常用命令
    一、物理卷管理1.1、物理卷的创建:pvcreate命令pvcreate[命令选项][参数]将物理分区转换为物理卷命令选项-f:强制创建物理卷,不需要用户确认;-u:指定设备的UUID;-y:所有的问题都回答“yes”;-Z:是否利用前4个扇区。1.2、物理卷的移除:pvremove命令pvremove[命令选......
  • Linux基本命令与常用符号
    一、常用命令介绍在linux系统中存在很多命令,这些命令可以帮助我们完成不同的工作,在这里面我们先介绍一些常用的基础命令,这些命令可以帮助我们完成对应的基本操作,随着以后的学习,我们还会接触到更多可以帮助我们完成不同工作的linux命令,我们来一起看一下这些基础命令都有哪些1、关......
  • kafka常用命令
    kafka文件所在位置:cd/UTMGMAPL/upkafka_1.2.11-1.0/bin创建一个模拟生产者./kafka-console-producer.sh--broker-list146.33.240.13:9092--topictopic_tyq_1创建一个模拟消费者./kafka-con......
  • impala常用命令
    进入impala:172.18.145.220impala-shell查看表分区showpartitions表名查看表结构desc表名清空表truncate表名删除指定分区(如果是最外层,那......
  • 汇编 & 寄存器 总结
    栈为什么从高地址向地址增长,因为更好的利用内存,一个从高往低,一个从低往高,最终内存被充分利用pop与push指令都是堆栈顶指针的操作pop栈顶指针esp增加,弹出栈中内存数据到寄存器push栈顶指针esp减小,将寄存器(或许指定的数据)中的数据写入到栈内存......
  • 2023-2024-1 20231317《计算机基础与程序设计》第四周学习总结
    作业信息这个作业属于哪个课程<班级的链接>(如2023-2024-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2023-2024-1计算机基础与程序设计第四周作业)这个作业的目标<《C语言程序设计第三章》>作业正文...本博客链接https://www.cnblogs.com/......
  • 执行这个这个命令sh download_depth_models.sh【记录】
     要下载上述模型,自己的电脑执行不了sh命令。 网上先下载git这个软件。sh.exe用这个软件来运行cd到 download_depth_models.sh这个文件所在的路径 再sh download_depth_models.sh执行这个命令! 方法二:直接用记事本打开这个文件download_depth_models.sh里面有ur......
  • Linux命令(99)之rz
    linux命令之rz1.rz介绍linux命令rz是用来把文件从windows等平台上传到Linux上2.rz用法rz[参数]filerz参数参数说明-b使用binary的方式上传,不解释字符为ascii-y相同文件名,覆盖-E相同文件名,不会将其覆盖,而是会在所上传文件后面加上.0,以此类推3.实例3.1.上传文件,相同文件名,进行覆盖......
  • 2023-2024-1 20231404高伟光 《计算机基础与程序设计》第四周学习总结
    作业信息所属班级计算机基础与程序设计作业要求要求作业目标学习并总结课本,通过测试作业正文本博客教材学习内容总结1.学习了门与电路的相关知识,了解了相关运算与图解2.知道大多计算机为冯-诺伊曼体系3.学习了强转,了解计算机赋值逻辑和晕算符号教材学......