# git-practice **Repository Path**: haif.yao/git-practice ## Basic Information - **Project Name**: git-practice - **Description**: git 练习 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2015-03-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #git-practice ##git开发流程 ### 开发原则 1、不能直接在master上进行开发 2、每次开发新功能的时候,在本地创建分支,如果功能是你一个人开发完成的,那不需要把分支push到remote,只需要在开发完成后,全部commit掉并且单元测试完成后,merge到master,并push到remote 3、如果你需要跟其他人共同完成一个功能,则两个人协商一个分支名称,push到remote后,共同开发完成后,merge到master 4、保证master是一个可运行的状态 5、在后续进入迭代发布线上环境后,创建pre-release分支用来发布测试,最后merge到master进行发布。发布完后创建tag标签 ###名词解释 Untracked files : 未被追踪的文件,需要用 `git add` 进行追踪 ###git 使用指南 1、创建分支并切换到当前分支名称 > git checkout -b branchename 2、在分支上进行工作,提交修改内容到分支 > git add . > git commit -m "description" 3、暂存整个工作区 > git stash save -u "message" > git stash apply 参考资料:http://blog.hanfeisun.info/2012/12/git-stash-adventure/ 4、push本地分支到远程服务器 >git push -u origin branchname 说明:-u 参数的作用在于在push分支到remote的同时,设置本地分支跟远程分支的关联,使得执行git pull的时候不需要指定merge到哪个分支。简单来说使用git push -u origin branchname以后就可以直接使用不带别的参数的git pull从之前push到的分支来pull ```bash $ git checkout -b test #without -u $ git push origin test $ git pull There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details git pull If you wish to set tracking information for this branch you can do so with: git branch --set-upstream-to=origin/ test # with -u $ git push -u origin test Branch test set up to track remote branch test from origin. Everything up-to-date $ git pull Already up-to-date. ```