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上
远程库克隆
创建与合并分支
  • 创建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推送
相关推荐
TensorFlowGAN22 分钟前
华三预赛从零开始学习笔记(每日编辑,复习完为止)
笔记·学习·华三
viviScript1 小时前
从零开始-VitePress 构建个人博客上传GitHub自动构建访问
git
△曉風殘月〆2 小时前
git如何将当前的修改提交到其它分支
git
垂杨有暮鸦⊙_⊙2 小时前
阅读《先进引信技术的发展与展望》识别和控制部分_笔记
笔记·学习
特种加菲猫2 小时前
初阶数据结构之栈的实现
开发语言·数据结构·笔记
明明真系叻2 小时前
第二十二周机器学习笔记:动手深度学习之——线性代数
笔记·深度学习·线性代数·机器学习·1024程序员节
大筒木老辈子2 小时前
Linux笔记---进程:初识进程
linux·服务器·笔记
2401_879103683 小时前
24.11.23 Ajax
笔记·ajax
xiaoyalian9 小时前
R语言绘图过程中遇到图例的图块中出现字符“a“的解决方法
笔记·r语言·数据可视化
Red Red11 小时前
网安基础知识|IDS入侵检测系统|IPS入侵防御系统|堡垒机|VPN|EDR|CC防御|云安全-VDC/VPC|安全服务
网络·笔记·学习·安全·web安全