实习笔记-5
git相关知识
新建代码库
1 | ## 当前目录 新建一个Git代码库 |
配置
1 | ## 显示当前的Git配置 |
增加/删除文件
1 | ## 添加指定文件到暂存区 |
-p 参数的提示
1 | y - stage this hunk |
代码提交
1 | ## 提交暂存区到仓库区 |
分支
1 | ## 列出所有本地分支 |
标签
- Git 可以给仓库历史中的某一个提交打上标签,以示重要。 比较有代表性的是人们会使用这个功能来标记发布结点( v1.0 、 v2.0 等等)。
- You have to commit first before tagging
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32## 列出所有tag
$ git tag
## 查看tag的信息
$ git show [tag]
## 新建一个tag在当前commit
$ git tag -a v1.4 -m "my version 1.4"
## 轻量标签
$ git tag [tag]
## 轻量标签本质上是将提交校验和存储到一个文件中,没有保存任何其他信息。
## 新建一个tag在指定commit
$ git tag [tag] [commit]
## 删除本地tag
$ git tag -d [tag]
## 删除远程tag
$ git push origin :refs/tags/[tagName]
## 查看tag信息
$ git show [tag]
## 提交指定tag
$ git push [remote] [tag]
## 提交所有tag
$ git push [remote] --tags
## 新建一个分支,指向某个tag
$ git checkout -b [branch] [tag]
查看信息
1 | ## 显示有变更的文件,本地未commit的文件 |
远程同步
1 | ## 下载远程仓库的所有变动 |
撤销
1 | ## 恢复暂存区的指定文件到工作区 |
git分支管理
master分支和开发分支

- 主分支只用来分布重大版本,日常开发应该在另一条分支上完成。我们把开发用的分支,叫做Develop。
创建develop分支
1 | git checkout -b develop master |
合并
1 | ## 切换到Master分支 |
--no-ff
参数- 默认情况下,Git执行”快进式合并”(fast-farward merge),会直接将Master分支指向Develop分支。
- 使用
--no-ff
参数,会执行正常合并,在Master分支上生成一个新节点


功能分支
- 为了开发某种特定功能,从Develop分支上面分出来的。开发完成后,要再并入Develop。

功能分支的名字,可以采用feature-*的形式命名。
创建一个功能分支:
1 | git checkout -b feature-x develop |
开发完成后,将功能分支合并到develop分支:
1 | git checkout develop |
删除feature分支:
1 | git branch -d feature-x |
预发布分支
指发布正式版本之前(即合并到Master分支之前),我们可能需要有一个预发布的版本进行测试。
预发布分支是从Develop分支上面分出来的,预发布结束以后,必须合并进Develop和Master分支。它的命名,可以采用release-*的形式。
创建一个预发布分支:
1 | git checkout -b release-1.2 develop |
确认没有问题后,合并到master分支:
1 | git checkout master |
再合并到develop分支:
1 | git checkout develop |
最后,删除预发布分支:
1 | git branch -d release-1.2 |
修补bug分支
- 修补bug分支是从Master分支上面分出来的。修补结束以后,再合并进Master和Develop分支。它的命名,可以采用fixbug-*的形式。

创建一个修补bug分支:
1 | git checkout -b fixbug-0.1 master |
修补结束后,合并到master分支:
1 | git checkout master |
再合并到develop分支:
1 | git checkout develop |
最后,删除”修补bug分支”:
1 | git branch -d fixbug-0.1 |
版本回退-撤销文件修改(针对文件修改的恢复)
自定义组件之–自定义xml属性
step1. 自定义属性名称
- 在values中创建一个xml文件,并且在其中写上你需要的自定义属性的名称以及类型。
1
2
3
4
5
6
7
8
9
10
<resources>
<declare-styleable name="MyTitle">
<!--name 指向自定义组件的类名-->
<attr name="textColor" format="color"/>
<attr name="titleText" format="string"/>
<attr name="leftText" format="string"/>
<attr name="rightText" format="string"/>
</declare-styleable>
</resources>
step2. 将属性名称与控件关联
1 | //从xml的属性中获取到字体颜色与string |
step3. 从第三方命名空间获取到自定义属性名称
1 |
|