git命令及远程仓库操作内容整理
0.在git官网上下载git对应的适配系统版本
进入到需要管理的目录,打开git终端
1.git相关的基础命令:
git init
在当前文件夹下创建一个.git的隐藏文件夹,初始化版本控制器
注:不要同一目录下多个位置初始化,他可以管理当前目录下所有文件(包括子级目录)
git status
查看Git当前状态,如:那些文件被修改过、那些文件还未提交到版本库等。
git add 文件名
将指定文件添加到版本库的暂存状态。
git commit -m '提交信息'
将暂存区的文件提交到版本库的分支。
第一次提交会要求配置email和name:
git config --local user.name 'sakura'
git config --local user.email 'you@example.com'
git log
查看提交记录,即:历史版本记录
git reset --hard 版本号
可以在log中查看版本号,并回滚到指定的版本
注:如果回滚后又想回滚到回滚之前的状态,这时候得使用git reflog,然后再git reset --hard 版本号
git revert 版本号 可以取消git log中的提交记录
2.stash
stash的应用场景:
如果在开发一个新功能时正开发了一半,发现以前的旧功能中存在bug,急需去修改bug,那么这个时候为了避免新功能造成干扰可以先将新开发的代码存储到临时文件夹中
git stash
将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态
git stash list
查看“某个地方”存储的所有记录
git stash clear
清空“某个地方”
git stash pop
将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
git stash apply 编号
将指定编号记录从“某个地方”重新拿到工作区(可能有冲突)
git stash drop 编号
删除指定编号的记录
3.branch
branch称为分支,默认仅有一个名为master的分支。
一般开发新功能流程为:开发新功能时会在分支dev上进行,开发完毕后再合并到master分支。
如果在开发的途中出现了bug,那么可以在master分支上开启一个bug分支,修复完成后使用merge来合并master与bug分支
新功能开发完成后再将dev分支与master分支进行合并
git branch 分支名称
创建分支
git checkout 分支名称
切换分支
git branch -m 分支名称
创建并切换到指定分支
git branch
查看所有分支
git branch -d 分支名称
删除分支
git merge 分支名称
将指定分支合并到当前分支
注:同样可以完成合并操作的还有rebase,它能使分支更加的简洁,美观
4.将项目上传到远程仓库
例如: github
git remote add origin(别名) https://github.com/louyifei8888/test.git
git push origin master
将本地的master分支推到github上
git push origin dev
将本地的dev分支推到github上
git clone https://github.com/louyifei8888/test.git
从github上克隆一份项目,默认获取到的只有master分支
git branch dev origin/dev
创建dev分支并导入远程origin中的dev分支同步
git pull origin dev
从远程GitHub仓库获取dev分支最新内容,并合并到本地
注:git pull origin dev 相当于执行了两步
第一步:git fetch origin
第二步:git merge origin/分支 或 git rebase origin/分支
5.协同开发的三种方式
1.项目合作者
2.创建组织,邀请成员(拥有修改组下所有项目代码的权利)
3.fork(fork到自己的仓库修改完成后new pull request,会给写项目的管理人员发送一条通知)