github相关

  • 检索条件筛选:

  • 命令行中粘贴是shift + ins(insert)

使用Steam++可以加速

V(virtual)P(personal)N(Network)虚拟专用网络

相关指令

  • 下载git注册git账号并进行全局配置 // Git Bash Here

  1. git config --global user.name "nameVal" // 配置用户名
  2. git config --global user.email "eamil@qq.com" // 配置邮箱

  • 查看工作区变化:git status

 

  • 查看历史 log

 git show 后面加上commit的hash值:

 这个就是commit的hash值(在log里查看)

  • 提交到暂存区 add

 写文件名的时候可以通过空格提交多个

add . 表示添加所有(小心使用,防止添加敏感信息)

add -u表示添加被追踪的文件(本来存在被修改的)

可以先add -u保存修改的,再使用文件名来添加新增的

-i是交互式的添加

 输入首字母或者数字编号都可以

  • 提交 commit

 -a是直接将修改提交,省去了add,但是对新增文件无效

  • 搜索 grep

  •  删除和移动 rm、mv

 同linux命令

  • 分支  branch

三种用途:区分版本、区分功能、用于不同人员

查看分支:

  •  -avv 表示查看所有分支的详细信息

 这里可以看到本地和远端的分支hash相同,表示同步了

  • 新建分支:

 branch 创建分支

checkout切换到某分支

checkout -b创建分支并直接切换到该分支

  • 删除分支:

 注意不能删除当前所在分支(蓝色的)

  •  远端仓库分支操作

 

 删除远端分支:本地推送一个空到远端表示删除

  • rebase:把两个分支做一个合并

  • 提交回滚 revert

 解释:对该hash的commit做一个逆向操作

 

作用:将一个分支上的commit剪到另一个分支上,是在目标分支上重新提交一次,所以commit id是不一样的(但是内容是一样的)

操作的时候要在后面带上被剪切的分支名

如将demo01的commit剪到master上,先checkout倒master分支,

然后 cherry-pick demo01 就会将demo01上面的commit操作剪到master上

  • 修改上一个提交

 

 这里amend是修改上一次的commit,也就是说并不会再创建一个新的commit

但是如果commit被已被push到远端服务器,则无法修改,指能改本地仓库的,类似事务提交。

参数是--amend

  • 修改历史commit (-i表示交互式)

 后边加上想要修改的commit的id

  •  看谁写坏了代码 blame

 

 可以看到对这个文件的commit信息

  •  找回丢失的提交 reflog

reflog会保存git底层的所有原子性操作

想改哪个就checkout回去

 git库瘦身

 因为有的分支虽然已经删除了(只删了tag也就是引用),但是它的内容还存在

这里的不可达点指的就是被删除了branch名字只剩下hash的分支点

不可达点是有默认过期时间的,我们可以通过上面第一条语句来强制过期,然后使用第二条语句将过期的删除

但是一般历史记录还是有点用的,所以没必要经常用这个

图形化界面 gitk

查看分支结构:

 

  •  操作暂存区:

 

 添加到暂存区:

 

idea插件

 

 

idea中git回滚

  • add的时候-u只提交被跟踪文件
  • 第一次创建远程仓库并推送文件

  // 先进入项目文件夹
  1. git init // 初始化本地仓库
  2. git remote add origin http...git // 绑定本地和远程仓库
  3. git add . // 将本地仓库的变化添加到缓存区(add和.之间有空格)
  4. git commit -m "注释" // 确认本地缓存区的内容 可以准备push
  5. git push -u origin HEAD:master

  • 如果报错了的话用下面的方法

// 重新建一个空文件夹
  1. git init // 初始化本地仓库
  2. git remote add origin http...git // 绑定本地和远程仓库
  3. git pull origin master // 拉取远程仓库文件
  4. 将需要上传的文件复制到此文件夹下
  5. git add . // 将本地仓库的变化(全部)添加到缓存区 
  6. git commit -m "注释" // 确认本地缓存区的内容 可以准备push
  7. git push -u origin master

  • 后续更新文件

  1. git add .
  2. git commit -m "更改注释"
  3. git pull // 拉取远程仓库的变化来同步本地的状态
  4. git status // 确定本地缓存区的状态
  5. git push // 提交本地仓库到远程仓库

  • 克隆(拉取)代码

  1. git clone http...git // 不指定分支
  2. git clone -b dev http...git // 拉取dev分支的代码

  • 在现有代码基础上获取远程最新代码

  1. git fetch // 获取远程最新代码版本
  2. git pull // 拉取远程最新版本的代码,并合并到本地 需要先做第一步 否则直接git pull拉取不到任何代码

  • git如何新建分支

  1. 切换到基础分支,如主干:git checkout master
  2. 创建并切换到新分支
  git checkout -b dev
  git branch可以看到已经在dev分支上
  3. 更新分支代码并提交
  git add *
  git commit -m "init dev
  git push origin dev
  4. 在git代码管理界面经可以看到dev分支了,成功~~

  • git 如何把分支代码合并到master主分支上

  1.首先切换到分支;
  git checkout dev
  2.使用git pull 把分支代码pull下来;
  git pull
  3.切换到主分支;
  git checkout master
  4.把分支的代码merge到主分支;
  git merge dev
  5.git push推上去ok完成,现在 你自己分支的代码就合并到主分支上了。
  git push

  • git 建立多个远程仓库

https://blog.csdn.net/gozhuyinglong/article/details/113861993

 

  •  查看项目时将github.com改成github1s.com可以在线调试

git命令行使用(演示)

  • 调整字体:右键option ->

  • git init 

在当前目录下进行初始化,生成.git 的隐藏文件

如果是生成裸库的话需要加上--bare(这样的话就不会有.git文件夹,也就是没有文件夹所在的工作区了)

生成的git库结构:

  •  工作区:.git目录所在的目录

  • 版本库: .git里的文件
  • 提交:   工作区的文件 - > 版本库
  • 暂存区:版本库中的一部分

 

 提交顺序:工作区  - > 暂存区 - > 版本库

工作区  - > 暂存区:

我们先放一个小项目进来:

 用于查看工作区变化,没有提交的文件是红色

提交到暂存区:

 这时可以看到文件颜色变绿了(表示已经存到暂存区):

 

 提交:

 但是这时还没有配置用户名:

配置一下(不加global则表示当前工程)

 再提交一次:

 这时就将暂存区的文件提交到了版本库中

查看日志可以看到刚才的提交:

 这时如果我们不小心删除了工作区中的文件,可以通过将暂存区和工作区同步来找回:

回来了:

 

 提交到远程仓库

我们先创建一个远程仓库:

 可以看到这句话,复制粘贴到命令行中:

 现在我们提交一下刚才的文件:

 弹出对话框:

 

 

 输入密码之后:

 

 

 查看仓库:

 可以看到成功提交

 生成ssh钥匙对

$ ssh-keygen -t rsa -C "1104809052qq.com"

 

 之后我们复制公钥:

 使用ssh的方式下载:

 把上图的路径复制:

成功

 

 

posted @ 2021-12-12 01:27  紫英626  阅读(33)  评论(0编辑  收藏  举报

紫英