Git+stash+jira
一、
git
Git
用法,流程
Git
版本控制工具,分布式协作式开发。
优点:
1.
趁中心化,完整的,可以提交到本地,需要提交到远程时才需要连接,svn
必须连接远程才能提交.
即离线操作,有本地仓库就能工作,不影响他人工作。
2.
分布式协作。
a)
创建分支开销小,只有一个.git文件目录
3. 创建分支,支持快速切换分支,方便比较合并分支
Git
创建:
(提交到本地)
1.
git init:初始化项目到 git仓库,初始化后会创建一个.git文件目录
注:所有git
相关的东西都在.git
目录下,且是隐藏文件
如:config,head
2.
git add --all
:添加所有文件
git add filename
:添加某个文件,如git add src/java/test.txt
git add -A:
提交所有,添加和修改的
git add -u:
只提交修改
git add -n:
打印要提交的文件
3.
git commit -m “commit remark comment” : 提交添加的代码,提交到本地仓库,-m 是指提交的注释,即注明本次提交代码的意义或目的。
4.
git log :查看
提交日志,提交的version
编号,唯一
5.
git status:
查看本地项目代码的状态,即代码是否有增删改
二、
stash
:使
git
的本地仓库代码提交到 远程中央服务器
一个为git
服务的平台,即git
的生态系统。如:coding
,stash
6.
git remote add origin
远程地址 :连接指定的远程服务器
7.
git push origin
分支名 :将代码提交到 远程服务器
注:fork下来的代码提交:git push “fork的直址”
- 查看用户名和邮箱地址:
$ git config
user.name
$ git config user.email
- 修改用户名和邮箱地址:
$ git config --global user.email "email"
三、
git+stash
1.
若修改没有交集,stash
会自动合并。
注:提交后会把在本地的每次提交记录信息在远程端显示。
提交:可以一个小模块就提交,或一个逻辑写完就提交。利于合并,小模块合并方便,清晰。大量的合并工作量大,且合并易出错。
3.
合并冲突:
1)
git pull origin
分支名:拉取远程代码
2)
git
命令合并:建议使用工具合并,方便快捷,如eclipse, idea等工具
工具合并:git mergetools
3)
不提交的文件:.gitIgnore
目录下的文件是git
默认不提交的目录。
注:已经在git
里面的文件,删不掉。需要整个从远程和本进仓库删掉。
4.
删除远程文件:git rm –cached
文件或目录名。
5.
git fetch –all
:只拉取远程分支,不与本地合并
git pull:
相当于git fetch & git merge
四、
git+stash+jira
的关系
1.git
:
代码版本控制工具,即代码的增删改
1)
项目代码的创建,添加到git
,提交
2)
项目每个版本的提交保存
3)
代码的差异比较,借助工具会更好使用
4)
创建代码分支
5)
合并代码,即合并分支
6)
代码可以被忽略,与.gitIgnore
文件同级则默认被忽略,即不会提交到远程服务器。
7)git
本身就有一个本地仓库,每个开发人员的代码都在本地仓库,所以可以在本地提交n
次,确定可以了再提交到远程服务器。
2.jira
:
是项目管理,bug
提测平台。如从项目规划,到投入开发,到开发初期,到开发完成,到投入测试,提交bug
,到测试完成,到上线整个流程,及每一个过程的提交记录,即记录项目的进度。
1)jira
中每次工作流进度的改变(公告及与你相关的改变)都会发邮件通知级相应的开发人员
2)
每个工作流里的创建都有创建人,和任务或bug
被指定完成的人,创建可以是文字、图片等各种形式都支持,方便。
3.stash
:jira+git
,结合git
对代码的版本控制
和jira
对项目的管理
的一个管理工具。
1)
管理服务器上的git
代码
2)
管理用户和组:即可以创建一个项目开发团队
3)
拉请求:任何团队本地的代码丢失
或新加成员,可以从stash
上拉取项目代码。而且可以评审代码、添加注释并执行变更
4)
分支权限:每个团队成员可以根据自己开发的模块创建自己的分支,管理自己的代码,不影响他人的分支代码。但stash
可以控制权限,项目管理员可以给团队开发人员
赋权限,如创建分支权限,提交代码权限,删除代码权限等权限。
5)
快速浏览代码:stash
可以对代码变动进行跟踪,提供浏览代码库、查看变更、查找文件历史、浏览差异。
6)
编写自己的插件。