git的使用 笔记1

GIT

git的使用
  • 使用git提交的两步
    • 第一步:是使用 git add 把文件添加进去,实际上就是把文件添加到暂存区。
    • 第二步:使用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支上。

.git 跟踪管理版本的目录

创建版本库
  • 创建版本库
    • mkdir test
  • 进入目录
    • cd test
  • 显示当前目录
    • pwd
  • 通过命令把这个目录变成git可以管理的仓库
    • git init
  • 新建一个记事本文件使用命令将其添加到暂存区里面去
    • git add read.txt
  • 提交到仓库
    • git commit -m ‘提交read.txt’
    • 提交read.txt 提交注释
  • 通过命令git status来查看是否还有文件未提交
    • git status
  • 查看文件改了什么内容
    • git diff read.txt
  • 查看历史记录
    • git log
    • git log –-pretty=oneline 信息显示太多的话
版本回退
  • 回退版本
    • 回退上一个版本
      • git reset --hard HEAD^
    • 回退上上一个版本
      • git reset --hard HEAD^^
    • 回退前一百个版本
      • git reset --hard HEAD~100
  • 查看记事本内容
    • cat read.txt
  • 回退到最新版本
    • 查看之前的版本号
      • git reflog
    • 6fcfc89 版本号
      • git reset --hard 6fcfc89
Git撤销修改和删除文件操作
  • 撤销修改–未添加到暂存区
    • git checkout – read.txt
  • 撤销修改–添加到暂存区
    • git checkout – read.txt
  • 删除文件
    • rm read.txt
  • 恢复删除的文件
    • git checkout – read.txt
远程仓库
  • 第一步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令
    ssh-keygen -t rsa –C “youremail@example.com”
    • id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人
  • 第二步:登录github,打开” settings”中的SSH Keys页面,然后点击“Add SSH Key”,填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容,点击 Add Key,你就应该可以看到已经添加的key
添加远程库

我们已经在本地创建了一个Git仓库后,又想在github创建一个Git仓库,并且希望这两个仓库进行远程同步,这样github的仓库可以作为备份,又可以其他人通过该仓库来协作。

  • 登录github上,然后在右上角找到“create a new repo”创建一个新的仓库。
  • 在Repository name填入testgit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库
  • git remote add origin https://github.com/tugenhua0707/test.git
  • git push -u origin master 本地仓库分支master内容推送到远程库中
    • 由于远程库是空的,我们第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
  • git push origin master 把本地master分支的最新修改推送到github上
远程库克隆
  • git clone origin https://github.com/tugenhua0707/test2.git
创建与合并分支
  • 创建dev分支,然后切换到dev分支上
    • git checkout -b dev
    • git checkout 命令加上 –b参数表示创建并切换,相当于如下2条命令
      • git branch dev
      • git checkout dev
    • git branch 查看分支,会列出所有的分支,当前分支前面会添加一个星号。
  • git merge 合并
    • git merge dev dev分支上的内容合并到分支master上(在master上输入命令)
    • git merge –no-ff -m “注释” dev
  • 分支管理策略
    • 通常合并分支时,git一般使用”Fast forward”模式,在这种模式下,删除分支后,会丢掉分支信息,现在我们来使用带参数 –no-ff来禁用”Fast forward”模式
  • 删除分支
    • git branch -d dev
  • 总结创建与合并分支命令
    • 查看分支:git branch
    • 创建分支:git branch name
    • 切换分支:git checkout name
    • 创建+切换分支:git checkout –b name
    • 合并某分支到当前分支:git merge name
    • 删除分支:git branch –d name
解决冲突
  • bug分支
    • git stash 将当前的工作现场隐藏起来
    • git stash list 查看工作现场
    • git stash apply 恢复 恢复后,stash内容并不删除
    • git stash drop stash内容删除
    • git stash pop 恢复的同时把stash内容也删除了
多人协作
  • 要查看远程库的信息 使用 git remote
  • 要查看远程库的详细信息 使用 git remote –v
  • git push origin master 推送分支
  • git pull
  • 可以试图用git push origin branch-name推送自己的修改.
  • 如果推送失败,则因为远程分支比你的本地更新早,需要先用git pull试图合并。
  • 如果合并有冲突,则需要解决冲突,并在本地提交。再用git push origin branch-name推送

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/597075.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阶段十-分布式-Redis01

第一章 Redis入门 1.1 节 什么是NoSql型数据库 NoSQL ,泛指非关系型的数据库, NoSQL Not Only SQL,它可以作为关系型数据库的良好补充。 NoSQL 不依赖业务逻辑方式存储,而以简单的key-value模式存储。因此大大的增加了数据库的扩展能力。NoSQL与SQL数据库区别对比如…

【Kubernetes 】Kubernetes 网络之 Ingress 配置详解

一、ingress 在Kubernetes集群中,Ingress作为集群内服务对外暴露的访问接入点,几乎承载着集群内服务访问的所有流量。Ingress是Kubernetes中的一个资源对象,用来管理集群外部访问集群内部服务的方式。可以通过Ingress资源来配置不同的转发规则,从而实现根据不同的规则设置访…

CMake入门教程【核心篇】包含目录(include_directories)

😈「CSDN主页」:传送门 😈「Bilibil首页」:传送门 😈「本专栏容」:CMake入门教程 😈「动动你的小手」:点赞👍收藏⭐️评论📝 文章目录 1. 基本用法2. 添加单个…

vue动态添加数据

1,先声明一个数组为响应式的,里面有一些数据 const tableData ref([{sex: 女,name: 姓名1,birthday:0512},{sex: 女,name: 姓名2,birthday:0314},{sex: 男,name: 姓名3,birthday:1012},{sex: 女,name: 姓名4,birthday:0915}, ]); 我这里用的是表格的,…

快手推荐算法工程师三面回顾

快手三次技术面试一次HR面试的简单回顾,希望对大家有所启发。 一面 面试官一上来就让写算法题,第一个是计算岛屿数量,第二个是最长回文字串。 然后就是介绍自己的论文。对于论文的工作,面试官只是在问关于论文的问题&#xff0…

【PCB专题】Allegro封装更新焊盘

在PCB封装的绘制中,有时会出现需要更新焊盘的情况。比如在制作封装的过程中发现焊盘做的不对而使用PAD_Designer重新更新了焊盘。 那在PCB中如何更新已经修改过的焊盘呢? 打开封装,选择Tools->Padstack->Refresh... 选择Refresh all …

CentOS快速安装Mysql5.7(Alibaba Cloud Linux兼容)

1、安装 在线下载 http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 下载rpm安装包 [roottheo bin]# cd /usr/local [roottheo local]# wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm安装rpm [roottheo local]# rpm -iv…

关于一个web站点的欢迎页面

- 什么是一个web站点的欢迎页面? - 对于一个webapp来说,我们是可以设置它的欢迎页面的。 - 设置了欢迎页面之后,当你访问这个webapp的时候,或者访问这个web站点的时候,没有指定任何“资源路径”,这个时候…

中国FinOps现状调查报告(2023)》亮点解读

今年以来,我们举办了多期FinOps的专题分享,邀请了美图、腾讯、B站、趣丸、知乎等厂商和行业专家,分享他们在FinOps领域的经验。我们也发现越来越多的人对FinOps产生了浓厚的兴趣,而且FinOps的成熟度也在逐渐提升。 降本增效&…

SpringSecurity结合knife4j实现swagger文档

🍁 作者:知识浅谈,CSDN签约讲师,CSDN博客专家,华为云云享专家,阿里云专家博主 📌 擅长领域:全栈工程师、爬虫、ACM算法 💒 公众号:知识浅谈 🔥网站…

关键字:instanceof关键字

在 Java 中,instanceof关键字用于检查一个对象是否是某个特定类或其子类的实例。它的语法如下: 其中,Object是要检查的对象,Class是要检查的类或接口。 instanceof关键字的返回值是一个布尔值,如果对象Object是类Cla…

Docker介绍、常用命令、项目部署

什么是Docker 简单说:Docker就是一个虚拟机,专业说:它是一个开源的容器平台。它和我们常用的VMware有很多相似的地方。 名词解释 镜像/images 由本体打包出来的文件。并不是文件本身,但是具有该文件的功能。举个不太贴切的例子&…

Android Matrix剪切clipPath缩放scale图片postTranslate圆形放大镜,Kotlin(2)

Android Matrix剪切clipPath缩放scale图片postTranslate圆形放大镜,Kotlin(2) 在 Android Matrix剪切clipPath缩放scale图片postTranslate圆形放大镜,Kotlin(1) Android Matrix剪切clipPath缩放scale图片po…

基于Java教师信息管理系统

基于Java的教师信息管理系统是一个用于管理教师信息的软件系统。该系统采用Java编程语言,利用JSP、Servlet等技术进行开发,并使用MySQL数据库进行数据存储和处理。 系统功能主要包括: 1、教师信息录入:管理员可以录入新教师信息…

LCR 174. 寻找二叉搜索树中的目标节点

解题思路: 二叉搜索树一般采用中序遍历(从小到大排列)。 class Solution {int res, cnt;public int findTargetNode(TreeNode root, int cnt) {this.cnt cnt;dfs(root);return res;}void dfs(TreeNode root) {if(root null) return;dfs(ro…

Docker 入门 ------容器互通以及Dockerfile

1. 端口映射以及容器互联 Docker 除了通过网络访问,还提供了两种很方便的功能来满足服务访问的基本需求: 允许映射容器内应用的服务端口到本地宿主主机互联机制实现多个容器间通过容器名来快速访问 1.1 容器映射实现访问容器 1.1.1 从外部访问容器应…

MYSQL语句 | find_in_set()

FIND_IN_SET() 是 MySQL 中的一个字符串函数,用于在逗号分隔的字符串列表中查找指定字符串的位置。 它的语法如下: FIND_IN_SET(search_string, string_list)search_string: 要搜索的字符串。string_list: 逗号分隔的字符串列表。 该函数返回一个整数…

回归和分类区别

回归任务(Regression): 特点: 输出是连续值,通常是实数。任务目标是预测或估计一个数值。典型应用包括房价预测、销售额预测、温度预测等。 目标: 最小化预测值与真实值之间的差异,通常使用…

Python 标准库中的 csv 包

0. Abstract 官方文档很罗嗦,长篇大论例子少。本文将举例说明 csv 包的用法,然后补充一些必要的说明。 1.0 CSV 文件 CSV(Comma-Separated Values,逗号分隔值)文件是一种常见的以纯文本形式存储数据的文件格式。它使用逗号作为字段之间的分隔符&#…

解决docker容器内无法连接宿主redis

背景 小程序的发短信服务挂了,随查看日志,该报错日志如下 Error 111 connecting to 127.0.0.1:6379. Connection refused. 6379是监听redis服务的端口,那大概是redis出错了。 首先查看了redis是否正常启动,检查出服务正常。 由于小…