Git详细操作
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
其中33a5cde为commit_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详细操作的更多相关文章
- Git远程操作详解
Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...
- Git远程操作
Git远程操作 // */ // ]]> Git远程操作 Table of Contents 1 Git远程命令概览 2 Git远程仓库与本地仓库的关系图 3 git clone 4 git ...
- [转]Git远程操作详解
原文:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...
- Git基础操作
配置秘钥 1.检查本机有没有秘钥 检查~/.ssh看看是否有名为d_rsa.pub和id_dsa.pub的2个文件. $ ~/.sshbash: /c/Users/lenovo/.ssh: Is a ...
- 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 ...
- Git 远程操作详解
Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...
- 【Git】Git远程操作详解
Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...
- git报错:'fatal:remote origin already exists'怎么处理?附上git常用操作以及说明。
git添加远程库的时候有可能出现如下的错误, 怎么解决? 只要两步: 1.先删除 $ git remote rm origin 2.再次执行添加就可以了. ---------------------- ...
- 工作中常用Git指令操作
常用Git指令总结 前阵子有几天好不顺,可谓是喝水都呛着,更何况被Git给呛着了,还不轻,哈哈.所以打算总结一下自己在工作使用到Git相关的东西以及和大家探讨使用GIt的心得体会.于是,关于Git的的 ...
随机推荐
- delphi10.3.1不支持.net 5
delphi10.3.1不支持.net 5 安装DELPHI的前提条件:WINDOWS必须安装有.NET. DELPHI安装程序在安装的时候会自动检测.NET是否已经安装好,如果发现没有,它会报错,并 ...
- 通过 redo日志恢复数据库
如果还原存档的重做日志文件和数据文件,则必须先执行介质恢复,然后才能打开数据库.归档重做日志文件中未反映在数据文件中的任何数据库事务都将应用于数据文件,从而在打开数据库之前将它们置于事务一致状态. 介 ...
- Flask-SQLAlchemy操作
Flask-SQLAlchemy SQLAlchemy 一. 介绍 SQLAlchemy是一个基于Python实现的ORM框架.该框架建立在 DB API之上,使用关系对象映射进行数据库操作,简言 ...
- mac-chrome下手动安装vue-devtools
原文链接:https://blog.csdn.net/weixin_44868003/article/details/89457089 废话就不多说,直接上安装步骤,一步一步来 => succe ...
- java工厂模式的测试
/** * 工厂模式的测试 * <p> * 工厂方法模式 * 工厂方法模式是简单工厂模式的进一步抽象化和推广,工厂方法模式里不再只由一个工厂类决定那一个产品类应当被实例化,这个决定被交给抽 ...
- Activiti数据库支持
Activiti的后台是有数据库的支持,所有的表都以ACT_开头. 第二部分是表示表的用途的两个字母标识. 用途也和服务的API对应. ACT_RE_*: 'RE'表示repository. 这个前缀 ...
- linux下怎么用ssh连接另一台linux服务器
linux系统大家都知道是服务器版本一般都没有图像界面,通过字符界面操作.用ssh远程方式远程,如果要从一台linux远程到另外一台系统应该怎么操作呢本经验咗嚛以cenots7为例演示 方法/步骤 ...
- 数学建模python matlab 编程(疾病传播模型)
例12:一只游船上有800(1000)人,一名游客不慎患传染病,12(10)小时后有3人发病,由于船上不能及时隔离,问经过60(30)小时,72小时,患此病的人数.(与人口模型和Logistic模型类 ...
- Data - 大数据生态圈
本文内容来自网络,对原文内容和格式做了细微调整,并配图以便阅读理解. 如想查看初始信息,请点击原文. 00 引言 大数据本身是个很宽泛的概念,Hadoop生态圈(或者泛生态圈)基本上都是为了处理超过单 ...
- dlopen, dlsym今天才刚知道干什么用的,羞死人了
dlopen, dlsym今天才刚知道干什么用的,羞死人了