git版本控制(gitee/github)

git初始化

git init

Git用户名的查看和修改

查看用户名和邮箱地址

$ git config user.name
$ git config user.email

修改全局用户名和邮箱地址:

$ git config --global user.name  "username"     
$ git config --global user.email "email"        

修改局部用户名和邮箱地址

$ cd ~/you project                       
$ git config user.name  "username"      
$ git config user.email "email"     

提交文件与用户相关

 提交文件时候,如果有local的用户信息,就使用local的用户信息提交,
 如果没有local的用户信息,就用全局的用户信息提交。

查看当前文件夹下文件状态

git status

添加文件管理

对指定文件进行版本控制(红色的即变化或未添加,执行后变绿)

添加所有文件

git add . 

添加指定文件

git add 

版本创建(创建版本信息的时候写的尽可能详细)

git commit -m '版本名'

查看版本号(前版本号)

git log

查看版本号(所有版本号)

git reflog

版本回滚

git reset --hard 随机版本号
(例:git log获得的版本号)git reset --hard 34191134fe641edc5574d961fd83df2d56a747ef    
(例:git reflog获得的版本号)git reset --hard 80f375f

文件过滤

 新建一个`.gitignore.`文件,在里面添加需要被覆盖的文件。

git版本控制(gitee/github)_第1张图片

文件暂存区

git stash 暂存修改部分文件
git stash pop #取回暂存区文件

1111
2222
3333

git status
git add . 
git commit -m 'origin' 

1111
2222
3333
这是用于测试git stash的文本

git status 
git stash

1111
2222
3333

这时手动删除2222

1111
3333

git status
git add .
git commit 'after delete'
git stash pop

1111
3333
这是用于测试git stash的文本

解析:git stash pop会为你把暂存区的数据取出,直接还原到你的文本上
git自动还原文本的机制是你没有修改文本的末尾行,并且每行的开头没有相似的数据。
否则git自动识别功能就会发生冲突,它会把stash时被删除的值以及被stash的值一并返回给你,让你决定是否修改。

查询暂存过的所有记录
git stash list 
取回暂存记录
git stash apply 标号stash@{11}
删除指定编号记录
git stash drop  标号stash@{11}
清空所有记录
git stash clear 

文件线上操作

选择线上仓库


1.注册码云账号并登录:https://gitee.com/
2.创建仓库(课堂截图)
3.本地与服务器仓库建立连接
"""
"""
1)本地配置线上的账号与邮箱
>: git config --global user.name "doctor_owen"
>: git config --global user.email "[email protected]"

2)在本地初始化仓库(git init),并完成项目的初步搭建(项目架构)(一般都是项目负责人完成项目启动)
# 这个过程就是git的基础部分的本地操作

3)采用 https协议 或 ssh协议 与远程git仓库通信提交提交代码(一般都是项目负责人完成)
	i) https协议方式,无需配置,但是每次提交都有验证管理员账号密码
	>: git remote add origin https://gitee.com/doctor_owen/luffy.git  # 配置远程源
	>: git push -u origin master  # 提交本地仓库到远程源
	
	ii) ssh协议,需要配置,配置完成之后就可以正常提交代码
	>: git remote add origin [email protected]:doctor_owen/luffy.git  # 配置远程源
	>: git push -u origin master  # 提交本地仓库到远程源
	
	iii)查看源及源链接信息
	>: git remote
	>: git remote -v
	
	iv)删除源链接
	>: git remote remove 源名字 
	
注:origin远程源的源名,可以自定义;master是分支名,是默认的主分支

生成公钥
1.参考帮助文档:https://gitee.com/help/ 
	-- 仓库管理 => 公钥管理 => 生成/添加SSH公钥
	
>: ssh-keygen -t rsa -C "[email protected]"

git团队开发:重点


管理员
1.管理员配置与线上账号密码系统的本地全局账号密码
>: git config --global user.name "doctor_owen"
>: git config --global user.email "[email protected]"

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

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

开发者

5.要参与开发的成员配置本地全局账号密码
>: git config --global user.name "owen"
>: git config --global user.email "[email protected]"

6.生成本机的SSH公钥提供给管理员
>: ssh-keygen -t rsa -C "[email protected]"

管理员
7.添加开发者提供的公钥到 个人公钥 并非是 公钥,并给开发者提供远程仓库SSH地址
	仓库 => 管理 => 添加公钥 => 添加个人公钥
	SSH地址:[email protected]:doctor_owen/luffy.git

开发者
8.在本机任意合适位置clone远程仓库到本地
>: git clone [email protected]:doctor_owen/luffy.git

9.进入本地项目仓库进行开发,可以查看远程源
>: cd luffy
>: git remote -v
注:origin  [email protected]:doctor_owen/luffy.git (fetch) & (push)

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

多分支开发

分支操作

1.创建分支
>: git branch 分支名

2.查看分支
>: git branch

3.切换分支
>: git checkout 分支名

4.创建并切换到分支
>: git checkout -b 分支名

5.删除分支
>: git branch -d 分支名

6.查看远程分支
>: git branch -a

你可能感兴趣的:(git)