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
###最后:
天天向上,快乐工作!
Git使用日记的更多相关文章
- Git 初学者使用指南及Git 资源整理
Git 资源整理 Git is a free and open source distributed version control system designed to handle everyth ...
- Web前端开发推荐阅读书籍、学习课程下载
转自http://www.xuanfengge.com/fe-books.html 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 除了在项目中学 ...
- Linux环境下第一次提交项目
Linux环境下第一次提交项目: vi 日记 新增一个文件名为“日记”的文件 git status 工作区的状态 git add 日记 建立跟踪 git commit 提交变更 ----------- ...
- 看日记学git摘要~灰常用心的教程
看日记学git linux 命令行 cd ls / ls -a clear mkdir rmdir echo "hi, good day" > hi.txt touch he ...
- git@oschina.net源代码管理使用日记
git的优势: 1 可以创建分支: 2 版本控制是基于每一次提交的,而不需要考虑每次提交了多少个文件. 下载: 下载网址为:http://git-scm.com/download,根据您的操作系统选择 ...
- Linux(Ubuntu)使用日记(三)------git安装使用
1. 安装 首先,确认你的系统是否已安装git,可以通过git指令进行查看,如果没有,在命令行模式下输入sudo apt-get install git命令进行安装. 2. 配置 git confi ...
- Git和Jenkins日记之没有新提交代码
日期:2017/3/9 今天查看Jenkins运行代码记录的日志时,发现并没有昨天新提交的代码,然后查看了Jenkins的测试项目中所有的自动化测试用例, 并没有看到昨天新提交的测试用例,又查看了gi ...
- git@oschina.net源代码管理使用日记【转】
转自:https://www.cnblogs.com/Juvy/p/3556902.html git的优势: 1 可以创建分支: 2 版本控制是基于每一次提交的,而不需要考虑每次提交了多少个文件. 下 ...
- Git 分支代码管理日记备注
1〉 Bithucket 创建代码库 2〉 下载克隆代码 Git clone 代码链接 3〉 代码初始化完成之后,切换到代码文件夹 cd 文件夹名 4〉 查看分支情况 Git brach 5〉 ...
随机推荐
- python继承
Python继承 继承实例: 父类和子类的关系: 继承树: 没有父类就继承object类,不要忘记调用super().__init__来初始化父类 代码: class Person(object): ...
- iscroll初体验
引入 iscroll是什么?多的概念性让人看不懂的东西就不说了因为看了也可能看不明白,iscroll主要用于移动端设备,主要包括以下的应用场合: 缩放 拉动刷新 速度和性能提升 精确捕捉元素 自定义滚 ...
- U盘启动笔记本无法安装Win7问题和解决
用“大白菜”工具制作启动U盘,从U盘启动后进入Win PE环境安装Win7,提示“安装win7系统安装程序无法创建新的系统分区,也无法定位现有系统分区”.经以下各种努力后仍无法正常安装: 在BIOS里 ...
- python之对指定目录文件夹的批量重命名
python之对指定目录文件夹的批量重命名 import os,shutil,string dir = "/Users/lee0oo0/Documents/python/test" ...
- PHP之算法偶遇隨感
php真的很棒,很多函數把我們想要的功能都簡單實現了,是項目快速開發的首選.說實話,在BS程序開發方面我認為最好的兩種語言是PHP和JSP,我之前曾學過一段時間的java,確實很棒完全的OOP,但是它 ...
- PowerShell remoting中的second-hop问题
一直以来都对powershell remote有点一知半解, 今天通过这个问题的解决, 理解加深了好多. 下文写的挺清楚的, 保留在这里. Using CredSSP for second-hop ...
- AsyncTask实现断点续传
之前公司里面项目的下载模块都是使用xUtils提供的,最近看了下xUtils的源码,它里面也是使用AsyncTask来执行异步任务的,它的下载也包含了断点续传的功能.这里我自己也使用AsyncTask ...
- PHP多次调用Mysql存储过程报错解决办法
PHP多次调用Mysql数据库的存储过程会出现问题,主要问题为存储过程中执行多次SQL语句不能一一释放导致的,网上找了一些解决办法,比如使用 multi_query 然后一个一个释放,但是发现根本不适 ...
- MongoDB副本集配置系列九:MongoDB 常见问题
What is a namespace in MongoDB? If you remove a document, does MongoDB remove it from disk? When doe ...
- Linux 求文件交集 差集等
使用comm命令 假设两个文件FILE1和FILE2用集合A和B表示,FILE1内容如下: a b c e d a FILE2内容如下: c d a c 基本上有两个方法,一个是comm命令,一个是g ...