我是如何使用git的
安装
首先需要安装 msysgit, 下载地址:http://msysgit.github.io/
msysgit提供了Git Bash命令行工具和Git GUI,前者提供了类似linux系统下bash shell 工具。

再安装可视化工具 tortoisegit,下载地址: https://code.google.com/p/tortoisegit/
安装完之后可能需要手动添加环境变量PATH,通过以下命令确认 git 是否安装正确
$ git --version
常用命令
git常用命令如下:
# 查看git版本
$ git --version
# 初始化一个git仓库
$ git init
# 添加一个文件到缓存区
$ git add <file>
# 添加所有文件到缓存区
$ git add .
# 提交代码
$ git commit -m 'some comments'
# 如果不加`-m`参数,会自动打开vim编辑器,填写注释。
# 提交之前先从服务器拉一下
$ git pull
# 提交代码
$ git push
# 查看当前所在分支
$ git branch
* develop
master
# 查看所有分支:
$ git branch --all
# 删除分支
$ git brach -d xxx
# 切换分支(第一次克隆后可以从master分支切换到develop分支)
$ git brach checkout xxx
# 撤销文修改
$ git checkout -- <file>
# 查看git日志
$ gitk
# 合并当前分支到myBranch
$ git merger myBranch
# git修改上一次提交(不小心写错了)
$ git commit --amend
先记这么多,以后再查漏补缺。
Git flow
git flow 是一套用Git进行源代码管理时的一套行为规范和简化部分Git操作的工具。
Git flow中的分支:
主要分支
- master: 永远处在即将发布(production-ready)状态
- develop: 最新的开发状态
辅助分支
- feature: 开发新功能的分支, 基于 develop, 完成后 merge 回 develop
- release: 准备要发布版本的分支, 用来修复 bug. 基于 develop, 完成后 merge 回 develop 和 master
- hotfix: 修复 master 上的问题, 等不及 release 版本就必须马上上线. 基于 master, 完成后 merge 回 master 和 develop
# 开发功能时
git flow feature start login
# 开发完成时
git flow feature finish login
# 修改bug,hotfix
git flow hotfix start cookie
git flow hotfix finish cookie
我是如何使用git的的更多相关文章
- 我是怎么写 Git Commit message 的?
目录 作用 用的什么规范? type scope subject body footer 参考文章 用的什么辅助工具? 作用 编写格式化的 commit message 能够大大提高代码的维护效率. ...
- 从svn到git开发转变
前言:目前的公司的开发技术还是处于刀耕火种的年代,react,vue已经火到不行了,可是还在用jQuery一遍遍处理着dom.版本控制用的是svn,这里也不是说svn不好,在windows下svn的“ ...
- Git的上传步骤
Git的上传步骤 1.Git的命令基础 Git是当下最流行的版本控制工具(VCS),由linux系统之父linus开发.它能实现 团队中的代码协作开发,它在代码同步和代码管理方面功能强大,理念先进. ...
- git实践:对比svn
先前只用过svn,自然也没有去对比什么好坏,亲自上手之后发现svn和git实在是有很多不同 svn优点: 学习成本对比非常低 服务器公司统一控制管理 安全机制, 不会每个人都拷贝一份, 可以对组员限制 ...
- babun编译安装git(2.12.0)遇到的问题及解决办法
1. 下载git wget https://www.kernel.org/pub/software/scm/git/git-2.12.0.tar.xz 你或许需要加上选项: --no-check-ce ...
- 项目代码部署百度云(使用git部署,node环境)
学习做了一个小demo,总是在自己的电脑,和局域网上运行很没意思,现在就做点有意思的事情,将代码部署百度云. 1)首先你得进入百度云(直接百度,先要注册一个账号) 2)点击那个“应用引擎”,就会进入 ...
- git中如何忽略文件上传?
使用原因:至于我们为什么要使用git忽略文件,原因很多.就比如我自己的情况吧!自己一个人多地方开发,为了代码同步,这样很方便.但是有个问题就是,我创建 的是开源项目,上面有一些服务器上面的配置信息,这 ...
- Git多账号登陆
最近工作上遇到了使用git+repo的情况,需要用公司的邮箱和账号名重新申请ssh公私密钥,而我本身在github上也有一些开源项目,这里就是记录一下我是如何实现git多账号登陆的. 取消 ...
- Rust初步(三):使用atom搭配racer进行rust编程
在rust.cc社区中有一个关于rust编辑器的讨论(话说很多人要学一个新语言,都会立即考虑编辑器的问题,包括我在内),主要关注的是,智能提示(这个真的太重要了).大家讨论下来有几个选择 1. ecl ...
随机推荐
- 8.9 CSS知识点2
4.关系选择符 包含选择符(Descendant combinator) E F 选择所有被E元素包含的F元素 <style type="text/css"> h1 ...
- Bridging signals hdu 1950 (最长上升子序列)
http://acm.split.hdu.edu.cn/showproblem.php?pid=1950 题意:求最长上升(不连续or连续)子序列 推荐博客链接: http://blog.csdn.n ...
- 第四章 Leader选举算法分析
Leader选举 学习leader选举算法,主要是从选举概述,算法分析与源码分析(后续章节写)三个方面进行. Leader选举概述 服务器启动时期的Leader选举 选举的隐式条件便是ZooKeepe ...
- Linux 批量替换文件名
find -name "*parsed" |awk '{print $1}' |xargs -i{} mv {} {}.44
- nginx apache负载均衡测试
apache配置 (监听内网ip和端口) Listen 10.163.170.8:8001 Listen 10.163.170.8:8002 Listen 10.163.170.8:8003 < ...
- Echarts动态加载后台数据
注意:1.用Ajax请求获取后台数据 2.Echarts只能处理Json数据 后台Controller:根据业务需求不同而返回不同数据,我前台要循环遍历Echarts的series进行数据添加,所以后 ...
- (Python )控制流语句if、for、while
这一节,我们将学习Python的控制流语句,主要包括if.for.while.break.continue 和pass语句 1. If语句 if语句也许是我们最熟悉的语句.其使用方法如下: x=inp ...
- php pdo预处理语句与存储过程
很多更成熟的数据库都支持预处理语句的概念.什么是预处理语句?可以把它看作是想要运行的 SQL 的一种编译过的模板,它可以使用变量参数进行定制.预处理语句可以带来两大好处: 1.查询仅需解析(或预处理) ...
- PHP疑惑
<?php $a = array(); $a[0] = 1; $a[1] = 2; $b = (object)$a; var_dump($b); 怎么从对象$b 中取值??? <?php ...
- Jade之属性
属性 所有的html(5)标签在jade中均支持如下写法.jade中省去了html<>和标签的关闭等写法,并将属性写在括号之中.若存在多个属性,可以将其分为多行. jade: a(href ...