Git使用日记

git是个分布式的版本管理工具,现在我们前端这边用它做版本管理。之前也看过一些相关资料,不过没有使用它管理过项目代码。如今,用它也有段时间了所以就写些东西,仅供参考。


###快速上手

工作经常用到的几个git命令:

1. git clone 版本库地址
克隆远程版本库到本地

 

2. git checkout 分支名

切换当前工作分支到某个日常分支,开始写代码

3. git add .

把工作区修改的文件添加文件到暂存区

4. git commit -m '本次提交的注释'
把暂存的内容提交到本地版本库

5. git push origin 分支名

把本地版本库当前工作分支的内容提交到远程仓库对应的分支

6. git tag 标签名

发布之前会用这个命令给版本库的当前状态打个标签,用来标识版本库的当前状态是个稳定的可发布版本

git tag publish/1.0.0  
git push origin publish/1.0.0

 

有了这几个命令基本上就可以写代码了,使用过程中可以使用命令:
git <命令> --help ,查看某个命令的详细帮助文档。如:git commit --help ,会显示commit命令的帮助信息,看完后按q返回命令行。

###三种文件状态

在当前工作分支上执行命令:git status

可以查看本地当前工作分支下文件的状态。git有以下三种文件状态:

1. Untracked files:表示在工作区中新增加的还没有使用git add 命令添加到暂存区中的文件。

2. Changes to be committed:表示已经使用git add 命令把文件添加到了暂存区,但还没有使用git commmit命令把暂存区中内容提交到本地的版本库中

3. Changes not staged for commit:表示使用git commit提交到本地版本库后,在工作区又有改动的文件。

使用命令:git checkout —- filepath
从暂存区迁出文件到当前工作区,当前工作区的更改会丢失。

使用命令: git checkout commit —- filepath
使用当前本地版本库中最近一次提交的内容覆盖暂存区和工作区。

###常见问题

使用过程发现git有些基础性的和之前接触的版本管理工具还是有写不太一些。下面这些是我使用过程中的一些疑惑:

1. git的origin是指什么?

origin是我们git clone克隆下来的远程仓库的别名。可以使用命令:
git remote -v 查看origin指向的仓库地址。

2. git的HEAD是指什么?

git的HEAD它是一个指向当前工作分支的头指针。
3. 如何让git忽略某些特殊文件/文件?

在当前工作目录的根目录下新建一个.gitignore文件,git会忽略包含在这个文件中的文件/文件夹。一般gitinore会包含以下内容:

node_modules/
.idea/
.DS_Store

node_modules/:一般包含一些grunt打包工具依赖的nodejs模块

.DS_Store:是Mac OS保存文件夹的自定义属性的隐藏文件,如文件的图标位置或背景色,相当于Windows的desktop.ini。

.idea: 文件夹一般用来存放编辑器的配置文件


4. 如何删除一个本地tag?

git tag -d 标签名,如:git tag - d pulish/1.0.1

###最后:
天天向上,快乐工作!

posted @ 2015-04-09 11:33 rentj 阅读(...) 评论(...) 编辑 收藏