Git详细操作

一.本地配置

1公钥钥配置

1.参考帮助文档:https://gitee.com/help/

仓库管理 =公钥管理 =生成/添加SSH公钥

ssh-keygen -t rsa -C "xxxx@163.com"

按照提示完成三次回车,即可生成 ssh key。通过查看 ~/.ssh/id_rsa.pub 文件内容,获取到你的 public key

如果你是windows你可能执行上面命令会无法找到,那就手动去c盘直接搜索id_rsa.pub,打开复制里面内容即可

复制生成后的 ssh key,通过仓库主页 「管理」--「部署公钥管理」--「添加部署公钥」 ,添加生成的 public key 添加到仓库中。

添加后,在终端(Terminal)中输入

ssh -T git@gitee.com

-首次使用需要确认并添加主机到本机SSH可信列表。若返回 Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access. 内容,则证明添加成功。

2.本地配置线上的账号与邮箱

git config --global user.name "xxxxx"

git config --global user.email "xxxxxxxxx"

二.本地相关操作

1.本地初始化git仓库(可以建立一个项目架构)

1)创建项目

2)进入项目目录初始化仓库:

git init

必须空文件夹

3)提交代码到本地版本库

2.将本地版本库同步到远程仓库

创建一个远程空仓库(码云)

1)在本地仓库内添加远程仓库源,源名默认就采用origin,就采用https协议即可

git remote add origin https://gitee.com/doctor_owen/luffy.git

本质是改变git文件夹中config文件变成

[remote "origin"]
url = https://gitee.com/doctor_owen/luffy.git
fetch = +refs/heads/*:refs/remotes/origin/*

2)将本地版本库提交到远程版本库,需要远程仓库账号密码

git push -u origin master

三.开发者对于管理员操作

1.要参与开发的成员配置本地全局账号密码

git config --global user.name "owen"

git config --global user.email "owen@163.com"

2.生成本机的SSH公钥提供给管理员

ssh-keygen -t rsa -C "owen@163.com"

项目公开了无所谓了直接去下载即可

四.管理员对于开发者操作

添加开发者提供的公钥到 个人公钥 并非是 公钥,并给开发者提供远程仓库SSH地址

仓库 =管理 =添加公钥 =添加个人公钥

SSH地址:git@gitee.com:doctor_owen/luffy.git

五.开发者授权后相关操作

1.下载项目

注意:必须是空文件

git clone git@gitee.com:doctor_owen/luffy.git

2.查看远程源

.进入本地项目仓库进行开发

git remote -v

3.项目修改后提交

1.拉取项目

开发过程中要提交新功能时,一定要遵循先拉取(pull)再提交(push)

git pull

默认拉的是当前分支如果要拉其他分支

git pull origin(源名) 分支名

2.添加修改内容

git add .

3.注释提交信息

git commit -m '提交新功能的信息说明'

4.再次拉取项目

git pull origin(源名) 分支名

提示all read.....即可提交

5.提交项目

git push origin 分支名

如果后面不填,但是不建议这样操作以免提交错误

git push提交位置为当前分支

六.分支相关操作

1.创建分支

git branch 分支名

只是创建本地项目git上并没有创建

有新的文件提交前可以执行下面的命令创建git上的分支

git push --set-upstream origin 分支名

2.查看分支

git branch

3.切换分支

git checkout 分支名

4.创建并切换到分支

git checkout -b 分支名

5.删除分支

git branch -d 分支名

6.查看远程分支

git branch -a

七.冲突解决、分支合并

多人开发中我们项目可能会存在提交以及拉取时候的异常

git status

查看信息

打开对应的文件查看错误信息

基本上都是线下沟通

八.git版本回溯和版本提交查看

1.版本查看

1.查看历史

git log

注意: 这个命令可以帮助查看最近15天(貌似)的commit记录(时间从近到远),里面主要是下面这样子的

其中显示的参数

  • commit: 后面的是版本号,只要取前六位就可以到处用了

  • author: 是提交这个版本号的作者名字

  • date: 是提交日期

2.记录所操作的每一次命令

git reflog

例如:

33a5cde (HEAD -> master, origin/master, origin/HEAD) HEAD@{0}: commit: 修正
fe2a965 HEAD@{1}: commit: sqlite3
abc9fe2 HEAD@{2}: clone: from https://gitee.com/pythonywy/lufei.git

其中33a5cdecommit_id

3.查看指定版本修改的内容

git show commit_id 即为git show 33a5cde

4.查看某个文件的修改历史

git log -p filename

git log -p -2 查看最近两次的更新内容

2.版本回溯

全部统一修改

1.按提交历史

git reset --hard HEAD^ 回溯到上一个commit提交的版本,那上上个版本呢就是HEAD^^,其次类推

2.回到指定版本

git reflog

git reset --hard commit_id

局部文件回溯

git checkout filename 将工作区的改动恢复到上一个版本提交后的状态

git reset commit_id filename 这个就可以回溯到某个版本的某个文件状态了,

Git详细操作的更多相关文章

  1. Git远程操作详解

    Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...

  2. Git远程操作

    Git远程操作 // */ // ]]>   Git远程操作 Table of Contents 1 Git远程命令概览 2 Git远程仓库与本地仓库的关系图 3 git clone 4 git ...

  3. [转]Git远程操作详解

    原文:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...

  4. Git基础操作

    配置秘钥 1.检查本机有没有秘钥 检查~/.ssh看看是否有名为d_rsa.pub和id_dsa.pub的2个文件. $ ~/.sshbash: /c/Users/lenovo/.ssh: Is a ...

  5. git详细教程

    Table of Contents 1 Git详细教程 1.1 Git简介 1.1.1 Git是何方神圣? 1.1.2 重要的术语 1.1.3 索引 1.2 Git安装 1.3 Git配置 1.3.1 ...

  6. Git 远程操作详解

    Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...

  7. 【Git】Git远程操作详解

    Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...

  8. git报错:'fatal:remote origin already exists'怎么处理?附上git常用操作以及说明。

    git添加远程库的时候有可能出现如下的错误, 怎么解决? 只要两步: 1.先删除 $ git remote rm origin 2.再次执行添加就可以了. ---------------------- ...

  9. 工作中常用Git指令操作

    常用Git指令总结 前阵子有几天好不顺,可谓是喝水都呛着,更何况被Git给呛着了,还不轻,哈哈.所以打算总结一下自己在工作使用到Git相关的东西以及和大家探讨使用GIt的心得体会.于是,关于Git的的 ...

随机推荐

  1. 阶段5 3.微服务项目【学成在线】_day05 消息中间件RabbitMQ_11.RabbitMQ研究-工作模式-路由工作模式测试

    先常见生产者 复制02的代码 先改一下交换机的名称 还需要制定routingKey.因为是两个消息 所以指定了两个routingKey 这里修改为当前指定的交换机名称 交换机和队列在绑定的时候指定我们 ...

  2. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_15-webpack研究-webpack-dev-server-程序调试

    webpack把我们的js文件都打包了.所以不能用chrome的调试工具. 打包生成的js文件比较乱无法跟踪. 配置好了以后就可以让浏览器查看到打包后的源代码 在源代码这里加一个debuuger 这里 ...

  3. linux---学习3

    1.free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区. //-m:以MB为单位显示内存使用情况: free -m 2.vmstat命令的含义为显示虚拟内存状态, ...

  4. [Scikit-learn] 1.1 Generalized Linear Models - Logistic regression & Softmax

    二分类:Logistic regression 多分类:Softmax分类函数 对于损失函数,我们求其最小值, 对于似然函数,我们求其最大值. Logistic是loss function,即: 在逻 ...

  5. js取url问号后的参数方法封装

    工具方法: function getRequest() { var url = location.search; // 获取url中?后面的字符串 var theRequest = new Objec ...

  6. react 组件创建

    /** * 数据屏蔽 * Created by 2016-12-02. */ import React, {Component} from 'react'; export default class ...

  7. 如何为ubuntu等Linux系统扩容(LVM)

    第一步:磁盘分区 fdisk /dev/sdb root@ubuntu:/home/ubuntu# fdisk /dev/sdb Welcome to fdisk (util-linux 2.27.1 ...

  8. Spring Aop(十)——编程式的Pointcut

    转发地址:https://www.iteye.com/blog/elim-2396526 编程式的Pointcut 除了可以通过注解和Xml配置定义Pointcut之外,其实我们还可以通过程序来定义P ...

  9. tomcat-APR配置及三种工作模式简介

    安装软件包,之前可以用rpm -q 命令查看一下是否存在,如果有这两个软件包先卸载再重新安装yum -y install apr apr-devel 拷贝Tomcat安装目录下的bin目录下的tomc ...

  10. sql注入02

    第一关:基于错误的get单引号字符型注入 第二关:基于错误的get整形注入 第三关:基于错误的get单引号变形字符型注入 第四关:基础错误的双引号字符型注入 第五关: 第六关 第七关:导出文件get字 ...