Git常用命令、设置SSH免密登陆步骤、跨团队开发步骤

风流意气都作罢 提交于 2019-12-05 14:40:24

本地和远程仓库常用操作

命令              注释
git init         初始化git仓库
git status        查看工作区/暂存区状态
git config user.name [用户名]       设置签名(项目级别)
git config user.email [邮箱]        设置邮箱(项目级别)
git config --global user.name [用户名]    设置签名(系统级别)
git config --global user.email [邮箱]     设置邮箱(系统级别)
git add .          添加当前目录的所有文件到暂存区
git add [file name]    被新建/修改/删除的文件(file name:当前git相对路径下/绝对路径下的文件)添加到暂存区
git rm [file name]    从暂存区删除指定文件(file name:当前git相对路径下/绝对路径下的文件)
git rm --cached [file name]    从暂存区中取消缓存对应的文件(file name:当前git相对路径下/绝对路径下的文件)
git commit [file name]    从暂存区中提交指定文件到本地仓库(会进入vim编辑器编辑本次提交的备注信息)
git commit    提交暂存区中所有的文件到本地仓库(会进入vim编辑器编辑本次提交的备注信息)
git commit -m [备注信息] [file name]    提交暂存区中指定的文件到本地仓库
git commit -a    提交所有暂存区修改和删除的文件,未被git管理的(没有git add的)不受影响
git log    查看本地版本记录(最完整的记录)
git log --pretty=oneline    查看本地版本记录(一行显示部分记录,版本号、提交备注信息)
git log --online    查看本地版本记录(一行显示部分记录,片段版本号、提交备注信息),只能显示当前版本和以前的版本(版本回退后,不显示回退版本索引值后的版本)
git reflog    查看本地版本记录(一行显示部分记录,片段版本号、前进后退步数N(HEAD@{N})、提交备注信息 )
git reset --hard [局部索引值]    本地仓库、暂存区、工作区基于索引值(片段版本号)前进后退
git reset --hard HEAD[^]    本地仓库、暂存区、工作区版本后退。多少个 ^ 后退多少步
git reset --hard HEAD~N    本地仓库、暂存区、工作区版本后退。N为正整数,表示后退多少步
git reset [方式] [局部索引值]    版本后退前进。方式:--soft -》只后退本地仓库 --mixed -》后退本地仓库和暂存区 --hard -》后退本地仓库、暂存区和工作区
git diff [文件名]    对比工作区指定文件的版本差异
git diff HEAD[^/~]    对比暂存区指定文件的版本差异
git branch    显示所有(本地)版本的版本名
git branch -a    显示所有(远程、本地)版本的版本名
git branch -av    显示所有(远程、本地)版本的版本名、索引值(版本号)、提交备注信息
git branch [分支名]    新建本地分支
git checkout [分支名]    (当前本地分支)检出到指定本地分支。如果检出分支没有创建,但检测到存在对应分支名的远程分支,会新建一个本地分支指向该远程分支。如果本地/远程分支皆没有则报错
git branch -D [分支名]    强制删除本地分支
git push [远程仓库别名] -d [分支名]    删除远程分支
git push -f [远程仓库别名] [分支名]    强制回滚远程分支。注:如提示受保护分支,请在gitlab网站点击对应的 项目->Setting->Repositry->Protected Branches 删除对应受保护分支即可强制提交。
git checkout -b [分支名]    强制创建本地分支并切换到该本地分支。
git push --set-upstream [远程仓库别名] [分支名]    设置push 和 pull 的绝对地址。即每次push 和 pull操作都往该远程仓库的该分支进行操作。
git merge [分支名]    指定分支更新的内容合并更新当前分支内容
git remote add [远程仓库别名] [远程仓库地址]    本地创建远程仓库连接,fetch、push 操作执行到该远程路径
git remote -v     查看本地仓库指向哪些的远程仓库
git fetch [远程仓库别名] [分支名]    拉去远程仓库上的版本信息以及更新内容到git。注:该操作没有合并,需要输入git merge [远程仓库别名] [分支名] 进行合并
git push [远程仓库别名] [分支名]    push本地仓库的更新到远程仓库上。如果设置了(git push --set-upstream [远程仓库别名] [分支名]) 别名和分支名可以省略

 

设置SSH免密登陆

 

1.移动到家目录(cd ~)                                            
2.命令:ssh keygen -t rsa -C [GITHUB邮箱] 生成目录。注:已有目录可用rm -r .ssh删除目录                                            
3.直接按回车使用默认值                                            
4.移动到 .ssh 目录 查看公钥 (cat id_rsa.pub)                                            
5.GitHub网站点击用户,点击SSH and GPG keys ,点击 New SSH key,把id_rsa.pub内容粘贴到key,点击完成。                                            
6.添加SSH形式的远程仓库地址,git remote add [仓库别名] [仓库SSH地址]                                             
7.提交代码 git push [仓库别名] [分支名]                                            

 

 

跨团队开发步骤

1.登录github账号                                            
2.获取到需要跨团队开发的项目的git远程仓库的地址                                            
3.点击页面上的 Fork 项目                                            
4.可以上像自己的项目一样操作,开发完毕之后给源项目的owner发起Pull Resquest(github)/Merge Resquest(gitlab)                                            
5.fork项目的团队创建合并(pull/merege)请求,发送给源项目的owner                                            
6.源项目的owner审核合并代码即可                                            

 

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!