简单介绍一下git 的常用命令,希望大家会喜欢上git

简单介绍一下git 的常用命令,希望大家会喜欢上git

1. 关于git的原理, 网上很多, 这里只强调最重要的一点:  ”分布式版本控制系统” 这和svn “集中式版本控制” 完全不一样.

分布式指的是, 团队每个人的电脑上都有一个仓库, 每次commit 都是提交到这个仓库上.  commit之后 才可以push 到远端仓库. push命令就是和远端仓库同步数据. 其实本地仓库和远端仓库一摸一样, 每个人的仓库都可以作为源提供给别人.

2. 客户端安装,
> 官方客户端 下载地址 http://git-scm.com/downloads
       客户端有两个程序, 一个是GUI(不是很好用,出错了还得命令搞定,不如直接学命令),
一个是bash 命令行.
> eclipse 插件 这个简单, 只要知道git 基本原理,很容易上手.

3. 常用命令, 这里以我们的git server  carnegie 项目为例,  http://****
打开git bash:
1. 配置全局用户名和邮箱
git config –global user.name “**********”
git config –global user.email “****@*******”
2. 配置ssh key, 配好以后就不用输入用户名密码了.
ssh-keygen -t rsa -C “****@******”
中间提示输入密码什么的,直接回车,不输入什么内容.
命令会生成两个文件,我的是win7系统,目录在  C:\Users\cwb\.ssh
如果是xp系统,就在你的用户目录.
用notepad++ 打开 id_rsa.pub, 把里面的内容复制.
登陆  http://*******(公司内部搭建的一个gitserver)  用你的域账户登陆
点击 右上角的 “My Profile”

点击 SSH Keys: 

点击 Add SSH Key:
把 刚才copy 的pub key 粘贴到 key 输入框里, 点下面的 “Add key” 就OK了.

3. clone 项目:
回到 bash 命令行界面, cd 到我们需要clone 项目的目录, 比如:
cd /d/foldera/folderb
其中 /d 代表我们的D盘.
执行命令:
git clone git@*********:****/****.git  (git 项目地址)
到这里我们的项目就成功clone 下来了.

4. 常用命令解释:
git status — 查看你修改了但是还没提交的文件.
git add folder/file  –  把你修改的文件添加到 commit list
git commit -m “comment”  – 把文件提交到本地仓库
git push    – 把本地仓库的最新修改同步到远端仓库
git pull      – 把远程最新的代码拿到本地仓库

5. 下面介绍一个典型的 branch 策略, 不要晕  O(∩_∩)O哈哈~

branch 策略

 原文: http://nvie.com/posts/a-successful-git-branching-model/

这个图片涉及下面一些问题:

1. 在release 0.1 version之前不需要建别的branch, 我们可以用master branch.
2. 在 release 0.2 version之前,我们要做下面的事情:
> 开发新功能
> 修改0.1 version的bug, hot fix 一些紧急的bug.
> 把代码给PQA测试
> 有时候有的feature 在下一个release 不需要发布,将来发布.
> PQA 不断的测出bug,  有人不停的去修改.
上面这幅图的branch 策略 给出了一个完整的解决方案.
3. 在产品发布第一个version之后, 我们总共需要 5 到 6 个branch, 每个branch分工不同.
1. master branch: 这个branch的代码一定是最稳定产品, 其他branch代码最终都会merge到这branch上面,交付给客户.
2. developer branch: 交付了产品0.1 之后, 从master branch 上拉一个developer branch 继续开发,下一个版本是1.0.
3. hotfix branch: 客户报了一个错,需要紧急修改, 原则上不能直接在master branch上修改代码. developer branch又有了新的代码, 这个时候就要 拉一个新的 hotfix branch,修改bug,测试完之后, 同时merge到 master和developer branch上面. 这个时候的产品最新版本就是 0.2了
4. release branch: 产品1.0 开发完之后, 需要交给PQA测试. 这个时候,就拉一个 release branch 给他们.程序员接着在developer上开发下一个版本. PQA 测出bug,我们就到release branch 上修改,完了再merge到developer branch.
5. feature branch: 专门为特定的feature 拉一个branch, 比如,有点feature 下一个版本不需要,但是将来会需要,就可以单独从developer branch拉一个 feature branch来开发.

6. Branch 相关的 命令:
git branch  – 查看当前branch 信息
git checkout -b feature_x    – 新建一个新的branch, 这是一个本地分支, 除非你把这个branch push到远端,不然别人不知道有这个branch.
git branch -d feature_x      – 删除 branch feature_x
git push origin feature_x    – 把 branch push到远端服务器上.
git checkout origin/release  – checkout 远端 release branch
git checkout -t origin/developer    – 当前分支是developer 但是 git branch 显示 no branch, 这个命令就是checkout 远程 developer branch 并且本地branch的名字也是developer

   git pull origin developer   当前branch是 release, 这个命令是从developer branch拉代码
   git reset –hard HEAD      覆盖本地文件

7.  常见错误及解决方案:
git pull 命令报下面的错, 是因为我之前在eclipse 有些东西没配置好.
fatal: Couldn’t find remote ref origin/developer
     fatal: The remote end hung up unexpectedly
解决方法是: 删除 .git/config 文件里面的这一行
 fetch = origin/developer:refs/remotes/origin/developer
并且,正确的pull 方法是 git pull origin developer
O(∩_∩)O~  enjoy
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值