美文网首页
Git日常基本使用不完全指南

Git日常基本使用不完全指南

作者: 桃花谷主V | 来源:发表于2019-05-15 20:37 被阅读0次

一.常用命令

  • git init 初始化一个本地仓库,会在当前文件夹下生成一个.git文件包
  • git add ./<file> 提交本地内容到暂缓区,.表示全部提交,file表示提交的文件名
  • git commit -m"xxxx" 将暂缓区内容提交到本地仓库并进行备注
  • git status 查看本地内容状态
  • git reset --hard HEAD^ 本地回退到上一个版本
  • git reset --hard 版本号 本地回退到具体的版本
  • git log 查看提交的commit版本日志,但查看不到回退过的版本记录,即commit后回退了,该次commit记录查看不到
  • git reflog 查看所有的版本操作日志,方便查看每个操作步骤所在的版本,可以根据版本号自由前进后退
  • git checkout -- <file> 撤销在工作区的修改,回到和版本库一样的状态
  • git branch 分支名 创建分支
  • git branch 查看本地分支情况
  • git checkout 分支名 切换分支
  • git checkout -b 分支名 创建并切换分支
  • git merge 分支名 合并某分支到当前分支
  • git stash 把工作现成隐藏暂存起来
  • git stash pop 恢复隐藏暂存的内容
  • git remote add origin 远程仓库地址 将远程仓库和本地仓库进行关联
  • git remote -v 查看本地仓库对应的远程仓库
  • git clone 远程仓库地址 将远程仓库内容克隆到本地
  • git pull
  • git push origin 分支名 将本地分支推送到远程,远程仓库就创建了该分支
  • git checkout -b dev origin/dev 将远程dev分支拉取到本地,并在本地创建dev分支和远程dev分支进行关联

二.从零开始搭建项目仓库

在项目开发中,为了代码安全和方便多人协作开发,我们通常会使用代码托管工具对代码进行管理。在这里我们使用Github作为远程代码共享库。下面我们就从零开始搭建一个远程仓库,并和本地GIT仓库进行关联。具体步骤如下:

1. 创建SSH Key

因为本地的Git仓库和远程Github仓库之间是通过SSH加密进行传输的,因此需要先设置SSH Key。
设置SSH Key步骤:

  • 1.1 在C盘用户(USER)目录下找到.ssh文件夹,查看是否有id_rsaid_rsa.pub这两个文件;
  • 1.2 如果没有,执行ssh-keygen -t rsa –C “xxxx@example.com” 一路回车生成公钥和私钥文件,id_rsa是私钥,id_rsa.pub是公钥;

2. 登录Github,设置SSH Key

  • 2.1 登录GIthub,以此选择Setting - SSH and GPG keys, 然后选New SSH key按钮
  • 2.2 填写任意title(尽量有意义),将第一步生成文件id_rsa.pub中的内容复制进Key中,添加即可。

3. 在Github中创建一个远程仓库

在Github右上角找到+号,选择new repository,填写相关信息后创建仓库,至此,远程仓库就创建完毕了。

4. 将远程仓库和本地仓库进行关联,并将本地代码推送到远程仓库

将远程仓库和本地仓库进行关联分两种情况:
4.1 本地仓库还未创建
此时,只需要在本地项目文件夹中使用git clone 远程仓库项目地址 将远程仓库克隆到本地,因为此时远程仓库时空的,克隆下拉只有一个.git文件夹.这样就把本地仓库和远程仓库进行关联了,就可以在本地写项目代码。
4.2 本地仓库已创建

  • 001 初始化本地仓库
    git init
  • 002 将本地仓库和远程仓库进行关联
    git remote add origin 远程仓库项目地址
  • 003 将本地代码添加到暂缓区
    git add .
  • 004 将暂缓区代码上传到本地仓库
    git commit -m"xxxxx"
  • 005 将本地仓库代码推送到远程仓库
    git push -u origin master

    使用git push -u origin master 就可以将本地仓库推送到远程仓库,注意因为初始状态时远程仓库时空的,加上-u, git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令.

注意:通常执行005后会报错,因为本地分支版本低于远程,因此需要更新。需要执行:git pull --rebase origin master ,然后再执行005就成功了。

三.场景处理

1、在当前版本更新了内容,需要放弃文件修改

① 未add到暂缓区之前

  • 放弃部分文件修改
      git checkout -- 文件名
    
  • 放弃全部文件修改
      git checkout .
    
    ps: 在切换分支的时候如果遇到切换到新分支后很多文件被修改,可以使用该方法放弃修改。

② 已经add到了暂缓区

  • 放弃部分文件修改
      git reset HEAD 文件名
    
  • 放弃全部文件修改
      git reset HEAD .
    

③ 已经commit到了暂缓区

  • 回退版本
      git reset --hard HEAD^
    

2、在当前工作的分支上正在工作,但工作没做完无法提交,突然后紧急bug需要修复,该如何处理

  • 情景描述:

因为是紧急任务,而当前分支的工作也短时间内无法完成,因此无法在当前分支进行处理,需要重开新的分支单独处理bug问题。

  • 解决办法:

使用git stash命令先将当前任务暂存起来,然后当然分支就是干净了,就可以切换新的分支,当把新的分支bug修复完提交以后,就可以切换回这个分支,在使用git stash pop命令将暂存内容恢复,然后继续处理当前任务。

3、新建dev分支,将master代码拷贝到dev分支,在dev分支进行开发。具体步骤如下:

1)、新建本地dev分支并切换至dev分支

git checkout -b dev

2)、将本地master代码合并到dev分支

git merge master

3)、将本地dev分支推送到远程,并在远程创建dev分支

git push origin dev

此时,远程dev分支创建成功,代码也同步成功。

4、删除分支

  • 删除本地dev分支
git branch -d dev
  • 删除远程dev分支
git push origin --delete dev 或 git push origin -d dev
  • 删除全部远程已经删除过的本地分支
git remote prune origin

5、本地其他开发者远程拉取dev分支,并切换至dev分支

1)、 将远程分支信息拉取到本地

git fetch
  • 如果远程仓库没有的分支,但是本地remotes中看到还有,可以使用如下命令清除:
 git remote prune origin
  • 如果远程仓库存在的dev分支,git fetch之后在remotes中可以看到,本地没有,可以使用如下命令同步:
git checkout -b dev origin/dev

2)、查看远程所有分支信息

git branch -a

3)、切换分支

git checkout dev

6、已提交至远程的代码发现有问题需要回退到上一个版本

1)、本地回退

git reset --hard HEAD^

2)、推送远程

git push -f

相关文章

  • Git日常基本使用不完全指南

    一.常用命令 git init 初始化一个本地仓库,会在当前文件夹下生成一个.git文件包 git add ./<...

  • git日常使用指南

    git日常使用指南 Git是使用广泛的分布式版本控制系统。版本控制,简单讲就是记录文件变更历史。使用Git可以处理...

  • Git 入门指南

    Git 入门指南 [TOC] Git 基本操作,一篇文章就够了! 1. Git简介 在实际开发中,会使用Git作为...

  • git branch 分支与合并

    在使用 git 进行分支开发与合并的时候需要用到这些命令。其他基本 git 命令参考 Git 简易食用指南 git...

  • git操作指令,以及常规线上代码操作

    安装git后操作指令如下:可以查阅git安装使用操作指南详情git安装使用操作图示详情.note 线上可参考指南:...

  • 小白 Git 生存指南

    git 命令较多,使用不得法,伤人伤己,保证活下来!git生存指南.png 一、最基本概念: 五个存储区: 标准的...

  • git 不完全指南

    最近的工作中,总有小伙伴因为 git 问题整天抓头发.一般我都是建议他们看 廖雪峰的 git, 说实话,廖老师的文...

  • 使用 Git 协作开发项目指南

    1. Git fetch和git pull的区别 使用 Git 协作开发项目指南

  • git-使用指南

    这里推荐一下外国友人的使用指南。做的非常棒。git 使用简易指南☜

  • sass/git/gulp

    sass用法指南sass语法 常用git指令git-book gulp详细入门教程gulp使用指南segmentf...

网友评论

      本文标题:Git日常基本使用不完全指南

      本文链接:https://www.haomeiwen.com/subject/osnmaqtx.html