1、生成密钥对
a.生成密钥对命令:ssh-keygen -t rsa -C你的邮箱 —–其中C是大写。
b.生成之后用 notepad c:/User/Administrator/.ssh/id_rsa.pub 打开文件,然后将公钥添加的Gitlab中
2、获取远程git库
git clone <库名> 如:git clone [email protected]
3、添加、提交、推送修改
添加到本地工作目录:
git add 添加指定文件
git add . 添加当前目录下的所有文件和子目录
git add *.txt 添加所有以txt为扩展名的文件
提交写注释:
git commit -m “提交注释” 提交指定的文件
git commit -m “提交注释” 提交当前目录下所有文件及子目录
git push 将文件推送到远程服务器当前分支
git push origin 将文件推送到远程服务器指定分支
4、获取最新版本
git fetch origin :相当于是从远程获取最新版本到本地,不会自动merge。
git pull origin :相当于是从远程获取最新版本,并会自动merge到本地,相当于git fetch 和 git merge。
强制获取版本:删除本地代码后强制获取服务器文件
1、git fetch –all
2、git reset –hard origin/master
5、分支管理
git branch :查看分支
git branch :创建分支
git checkout -b :创建+切换分支
git push origin :分支推送到远端
git push origin test:test // 提交本地test分支作为远程的test分支
git checkout :切换分支
git merge :合并分支
==将develop分支合并到master操作方法:
1、首先切换到master分支:git checkout master
2、然后执行合并操作:git merge develop
3、解决冲突:如果有冲突,会提示你,调用git status查看冲突文件。解决冲突,然后调用git add将解决后的文件暂存。
所有冲突解决后,git commit 提交更改。
git branch -d :删除本地分支
git push origin : 删除远程分支
将主干文件获取到分支:git pull origin master
6、标签管理
查看标签:
git tag 可以查看所有标签。
创建标签:
git tag 用于新建一个标签,默认为HEAD,也可以指定一个commit id;
git tag -a -m “blablabla…”可以指定标签信息;
git tag -s -m “blablabla…”可以用PGP签名标签;
推送标签:
git push origin :可以推送一个本地标签;
git push origin –tags:可以推送全部未推送过的本地标签;
删除标签:
git tag -d :可以删除一个本地标签;
git push origin :refs/tags/:推送删除一个远程标签。
7、历史版本
git log:查看提交记录
git status:查看当前修改的状态,是否修改了还没提交,或者哪些文件未使用。
git reset :恢复到指定历史版本
8、替换或放弃本地修改
git checkout – “file” —- 相当于SVN的revert(放弃本地的修改),使用仓库版本替换此文件(多个文件用空格隔开)
git reset # 从暂存区恢复到工作文件
git reset – . # 从暂存区恢复到工作文件
git reset –hard # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改
9、锁定分支,控制提交
需要master权限,进入gitlab网页,项目设置
Gitlab项目settingsProtected branches