美文网首页
GIT常用操作

GIT常用操作

作者: 一个无趣的人W | 来源:发表于2019-07-22 20:20 被阅读0次

万般皆苦,唯有自渡

一、GIT

git是一个用于帮助用户实现版本控制的软件,达到多人协同开发的目的。
git是分布式的,每一个客户端均可以作为服务器为其他客户端提供代码。
git有强大的分支管理机制,可以在子分支上开发,将最终的成果同步到主分支即可。

二、安装(环境为MAC)

https://git-scm.com/download

三、工作流程

git本地工作流程
git流程图

三、搭建本地git仓库

将已有的文件夹作为git仓库

cd 目标文件夹内部
git init

在指定目录下创建git仓库

cd 目标目录
git init 仓库名

常用指令

  • 查看仓库状态
git status    【查看仓库状态】
git status -s    【查看仓库状态的简约显示】
  • 工作区操作
写代码
空文件夹不会被git记录
  • 工作区内容提交到暂存区
git add .     【添加项目中所有文件】
git add 文件名    【添加指定文件】
  • 撤销工作区操作:改、删
git checkout .  【撤销所有暂存区的提交】
git checkout 文件名   【撤销某一文件的暂存区提交】
  • 撤销暂存区提交:add的逆运算
git reset HEAD .  【撤销所有暂存区的提交】
git reset 文件名   【撤销某一文件的暂存区提交】
  • 提交暂存区内容到版本库
git commit -m "版本描述信息"
  • 撤销版本库提交:commit的逆运算
回滚暂存区已经提交到版本库的操作:
    查看历史版本:
        git log
        git reflog
    查看时间点之前|之后的日志:
        git log --after 2018-6-1
        git log --before 2018-6-1
        git reflog --after 2018-6-1
        git reflog --before 2018-6-1
    查看指定开发者日志
        git log --author author_name
        git reflog --author author_name
    回滚到指定版本:
        回滚到上一个版本:
            git reset --hard HEAD^
            git reset --hard HEAD~1
        回滚到上三个版本:
            git reset --hard HEAD^^^
            git reset --hard HEAD~3
        回滚到指定版本号的版本:
            git reset --hard 版本号
            eg: git reset --hard 35cb292
  • 过滤文件
.gitignore 文件
1)在仓库根目录下创建该文件
2)文件与文件夹均可以被过滤
3)文件过滤语法

------- 过滤文件内容 -------
文件或文件夹名:代表所有目录下的文件或文件夹都被过滤
/文件或文件夹名:代表仓库根目录下的文件或文件夹被过滤
目录/文件或文件夹名:代表特定目录下的文件或文件夹被过滤

ps:各大远程仓库如git,码云都自带.gitignore,在创建仓库的时候选择一下即可。

四、连接远程仓库

git远程仓库.png

代码托管的网站:github,Bitbucket,码云

以码云为例:
1、注册并登录:https://gitee.com/
2、创建仓库
3、本地仓库与服务器仓库建立连接
4、配置线上的账号和邮箱

全局配置:
 git config --global user.name "用户名"
 git config --global user.email '用户邮箱'
注:在全局文件.gitconfig新建用户信息,在所有仓库下都可以使用

局部配置:
git config user.name '用户名'
git config user.email '用户邮箱'

5、在本地初始化仓库(git init),并完成项目的初步搭建(项目架构)(一般都是项目负责人完成项目启动)

6、采用 https协议 或 ssh协议 与远程git仓库通信提交提交代码(一般都是项目负责人完成)
  1)https协议方式,无需配置,但是每次提交都有验证管理员账号密码

git remote add origin https://gitee.com/wprw/test.git  # 配置远程源
git push -u origin dev  # 提交本地仓库到远程源,🐷注意这里本地仓库分支要和远程仓库分支同步,一般提交到dev分支上

  2)ssh协议,需要配置,配置完成之后就可以正常提交代码

git remote add origin git@gitee.com:wprw/test.git  # 配置远程源
git push -u origin master  # 提交本地仓库到远程源

  3)查看源及源链接信息(第一次把本地提交到远程时先查看下有没有源)

git remote
git remote -v

  4)删除源链接

git remote remove 源名字 

注:origin远程源的源名,可以自定义;master是分支名,是默认的主分支

7、远程仓库生成公钥
  1)“码云”参考帮助文档:https://gitee.com/help/ -- 仓库管理 => 公钥管理 => 生成/添加SSH公钥

ssh-keygen -t rsa -C "6161@qq.com"

  2)“github”参考帮助文档:https://help.github.com/cn/articles/using-ssh-over-the-https-port

8、git协同开发
管理员(组长)

(1) 管理员配置与线上账号密码系统的本地全局账号密码
      git config --global user.name "wpr"
      git config --global user.email "wprw@163.com"

(2) 本地初始化git仓库(可以建立一个项目架构)
    1)创建项目
    2)进入项目目录初始化仓库:git init
    3)提交代码到本地版本库

(3) 创建一个远程空仓库

(4) 将本地版本库同步到远程仓库
    1)在本地仓库内添加远程仓库源,源名默认就采用origin,就采用https协议即可:  git remote add origin https: //gitee.com/wprw/test.git
    2)将本地版本库提交到远程版本库,需要远程仓库账号密码:git push -u origin master

(5) 添加开发者提供的公钥到 个人公钥 并非是 公钥,并给开发者提供远程仓库SSH地址
    仓库 => 管理 => 添加公钥 => 添加个人公钥
    SSH地址:git@gitee.com:wprw/test.git

开发者

(1) 要参与开发的成员配置本地全局账号密码
    git config --global user.name "wpr"
    git config --global user.email "wprw@163.com"

(2) 生成本机的SSH公钥提供给管理员
    ssh-keygen -t rsa -C "wprw@163.com"

(3) 🌸在本机任意合适位置clone远程仓库到本地
    git clone git@gitee.com:wprw/test.git

(4) 进入本地项目仓库进行开发,可以查看远程源
    cd test
    git remote -v   注:origin  git@gitee.com:wprw/test.git (fetch) & (push)

(5) 开发过程中要提交新功能时,🌸一定要遵循先拉取(pull),再提交(push)
    1)提交新功能(先提交,提交后拉取,可能就会出现冲突)
        git add .
        git commit -m '提交新功能的信息说明'
    2)拉取远程仓库(不管本地是否已经和远程同步,每一次提交前都必须拉取)
        git pull 源名 分支名 => git pull origin dev
    3)提交到远程仓库
        git push 源名 分支名 => git push origin dev

8、多分支开发

(1) 创建分支
  git branch 分支名

(2) 查看分支
  git branch

(3) 切换分支
  git checkout 分支名

(4) 创建并切换到分支
  git checkout -b 分支名

(5) 删除分支
  git branch -d 分支名

(6) 查看远程分支
  git branch -a

不太认真的总结:

git init   【初始化】
git status  【查看当前文件夹的状态(红色表示修改的但未被管控的,绿色表示已经被管控的)】
git add 文件名    【对指定文件进行版本控制(变绿,准备就绪)】
git add .     【对当前文件夹下的所有文件及子目录进行版本控制(变绿,准备就绪)】
git commit -m '详细的版本(描述)信息'  【创建提交记录(版本),一般公司会要求描述信息很详细,先看看别人的描述怎么写的(参照最详细的最长的)】
git log  【查看版本记录,只能看当前往后的】
git reflog  【查看版本记录,所有】
git reset --hard 提交记录(版本号)  【通过log拿到版本号,回滚到指定版本的状态】
git checkout --文件夹名  【变回修改前的原始状态】

分支结构开发命令:
    git branch  【查看分支列表】
    git branch  分支名  【在当前分支上再创建分支,就是从你现在分支上copy一份放到你新建分支上】  
    git branch -d 分支名 【删除指定分支】
    git checkout 分支名  【切换到指定分支下】
    git merge 分支名  【把指定分支合并到master中,这里要注意,如果两个都修改了同一行代码,会产生冲突】

远程托管命令总结:
    git remote add origin 代码地址     【给代码地址起别名】
    git push origin dev  【把代码推到远程仓库】
    git clone 代码地址    【把代码从远程仓库克隆下来】
    git pull origin dev   【把dev代码拉下来】== git fetch origin dev + git merge origin/dev
    git pull origin master  【把master代码拉下来】== git fetch origin master + git merge origin/master
    git rebase origin/dev  【替换merge,不会出现分叉记录】

版本命令总结: 
    git tag -a v1.0 -m "版本介绍"  【本地创建tag】
    git show v1.0  【查看】
    git tags -n  【查看本地tag】
    git tag -1 'v1.4.2.*'  【查看本地tag,模糊匹配】
    git tag -d v1.0  【删除tag】
    git push origin :refs/tags/v0.2  【更新远程tag】
    git checkout v.10  【切换tag】
    git fetch origin tag v1.2  【获取版本】
    git push origin --tags  【把版本推到远程仓库】
    git pull origin --tags  【把版本从远程仓库拉下来】
    git clone -b v1.0 【把某个版本代码拉下来】

git checkout 【工作区撤回】

git reset 文件名【暂存区撤回到工作区】

git reset —hard 版本号【版本库撤销】

touch.gitignore【写过滤条件的文件】

touch 文件名 【表示新建文件】

相关文章

  • 组件化(第一篇)

    组件化 git 常用操作指令 cocoapods的基本使用 cocoapods本地私有库 一、git 常用操作指令...

  • git的常用操作

    git的常用操作

  • GIt 操作补充

    常用的git操作命令 常用的git操作命令已经能够满足日常的工作需求 现补充一些高级命令 git branch -...

  • git使用整理

    git使用常用操作-常用基本命令 克隆:git clone 【url】 查看修改状态: git status (g...

  • GIT 版本管理 常用命令

    Git 常用命令流程图 Git常用操作命令: 初始化创建:$ git init //检出仓库:$ git clon...

  • 🍏常用 git 操作指北

    ? 常用 git 操作指南 ? git图形界面操作软件 ? 开发流程 git clone 拉取项目代码,不必多说 ...

  • git常用操作 🎀

    git常用操作 ? 基本知识 查看git信息 修改git配置 提交类操作 分支类操作 创建分支 查看分支 修改分支...

  • git常用操作命令

    git常用操作命令 1 git工作原理图 2 git远程操作 2.1 git clone 远程操作的第一步,通常是...

  • 真 git 操作大全 不会就看

    git 常用命令git 远程操作git 撤销操作 推酷git大全 react router4 中文文档 koa 简...

  • git常用操作

    git缩写配置: 在.gitconfig文件中添加: [alias] git常用操作: git clone 克隆一...

网友评论

      本文标题:GIT常用操作

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