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

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.lryc.cn/news/273265.html

相关文章:

  • 基于SpringBoot的医疗挂号管理系统
  • prometheus与zabbix监控的对比介绍
  • 详解全志R128 RTOS安全方案功能
  • 【MySQL】WITH AS 用法以及 ROW_NUMBER 函数 和 自增ID 的巧用
  • 基于SpringBoot的在线考试系统源码和论文
  • 基于Spring Boot的美妆分享系统:打造个性化推荐、互动社区与智能决策
  • Axure医疗-住院板块,住院患者原型预览,新增医护人员原型预览,新增病房原型预览,选择床位原型预览,主治医生原型预览,主治医生医嘱原型预览
  • 前端实战第一期:悬浮动画
  • Python学习笔记(五)函数、异常处理
  • Vue实现模糊查询
  • 【十一】【C++\动态规划】1218. 最长定差子序列、873. 最长的斐波那契子序列的长度、1027. 最长等差数列,三道题目深度解析
  • 主板部件
  • 2023年度学习总结
  • 服务器感染了.kann勒索病毒,如何确保数据文件完整恢复?
  • 使用results.csv文件数据绘制mAP对比图
  • 【算法刷题】## 算法题目第1讲:双指针处理数组题目 带视频讲解
  • 达梦数据:数字化时代,国产数据库第一股终于到来?
  • selenium4.0中常见操作方式50条
  • 如何解决使用融云音视频时由于库冲突导致编译不通过的问题
  • ISP 基础知识积累
  • Android Studio新手实战——深入学习Activity组件
  • [足式机器人]Part2 Dr. CAN学习笔记-自动控制原理Ch1-10奈奎斯特稳定性判据-Nyquist Stability Criterion
  • 企业培训系统开发:构建灵活高效的学习平台
  • 2023秋电子科大信软 程算I 机考真题
  • Hive用户自定义函数之UDF开发
  • Unity中URP下的线性雾
  • SpringBoot全局Controller返回值格式统一处理
  • 程序媛的mac修炼手册-- 终端shell的驾驭 zsh vs bash
  • 基于PHP的校园代购商城系统
  • 感知与认知的碰撞,大模型时代的智能文档处理范式