上传项目到github:
1.在github上创建远程仓库,填写仓库名和仓库说明,可选择仓库私有或者公开,点击Create responsity。
2.在创建好远程仓库中,点击Clone or download 复制url,本地仓库关联远程仓库需要用到。
3.在本地的一个文件夹或者项目中,打开终端输入 git init,则本地仓库创建完成,可查看隐藏文件发现.git文件.(rm -rf .git可以删除本地仓库)
4.将项目添加文件到暂存区git add .(.表示全部文件,也可以选择某个文件)
5.将项目添加到版本库git commit -m “提交信息”
6.关联远程仓库git remote add origin http//…git(远程仓库的url,回车后输入你github的账号密码)
7.上传到github仓库git push -u origin master
常见错误:
1.本地仓库git push命令提交到github远程仓库时,出现 "更新被拒绝,因为远程仓库包含您本地尚不存在的提交。
原因:在github网页进行提交后,会被人认为github代码仓库已在其他地方提交过一次,此时就会拒绝push。
解决方案:
对本地仓库和远程仓库进行合并冲突后,使用 git push命令.
1.强制上传git pull origin master --allow-unrelated-histories
2.同步远程仓库文件到本地git pull
3.提交git push -u origin master
撤销回退:
1.查看提交记录:git log
commit:提交版本号
Merge:分支合并
Author :提交人git的账号和邮箱
Date:提交时间
提交信息 (git commit -m “提交信息”)
按q退出查看记录!
2.撤销未提交的修改:
如果在开发工具中已经保存了,可以用checkout撤销修改,如:
git checkout app/src/main/java/com/example/…/…/MainActivity.java
3.版本回退:git reset --hard adffcaf (版本号用前七个字符就行了)
git reset --hard HEAD
在Git中,用HEAD代表当前版本,上一个版本就是HEAD^,再上一个版本就是HEAD^^,依次类推!
注意:回退后git log是查看不到回退之前的版本号,若回退后想会退到一开始的那个版本,使用git reflog (查看所有分支的所有操作记录)就可以看见所有的版本号了,然后在用git reset命令.
分支branch
1.分支命名规范:
master(主分支,永远是可用的、稳定的、可直接发布的版本,不能直接在该分支上开发);
develop(开发主分支,代码永远是最新,所有新功能以这个分支来创建自己的开发分支,该分支只做只合并操作,不能直接在该分支上开发)
feature-xxx(功能开发分支,在develop上创建分支,以自己开发功能模块命名,功能测试正常后合并到develop分支)
release(预分布分支,在合并好feature分支的develop分支上创建,主要是用来测试bug的分支,修改好bug并确定稳定之后合并到develop和master分支,然后发布master分支)
release-fix(功能bug修复分支,在release上创建分支修复,修复好测试出来的bug之后合并回release分支。)
hotfix-xxx(紧急bug修改分支,在master分支上创建,流程跟release分支相似,修复完成后合并到develop和master分支)
注意事项:
一个分支尽量开发一个功能模块,不要多个功能模块在一个分支上开发。
2.相关指令
2.1查看当前本地分支:git branch (*master,master是git默认的主分支,*标识你当前工作在哪个分支)
2.2 查看本地和远程所有分支:git branch -a 查看所有本地分支和远程分支
2.3创建分支:git branch 分支名
2.4切换分支:git checkout 分支名
2.5删除分支:git branch -d 分支名 ,不能直接删除当前分支,需要切换到其他分支才能进行。
2.6强制删除分支:git branch -D 分支名
2.7将分支同步到github线上:git push origin 分支名
2.8将某分支推到远程的某个分支:git push origin