最近开始使用git,将自己常用git命令做一个简单归纳,便于记忆。

初始化及配置

git init:初始化资料库
git config --global user.name 'xxx':配置用户名
git config --global user.email 'xxx@xxx':配置电子邮箱
git remote add origin <git repository url>:添加远端资料库,origin为资料库名,可自由指定,资料库url可在github网站上获取

文件推送

本地仓库由 git 维护的三棵“树”组成。第一个是你的 工作目录,它持有实际文件;第二个是 缓存区(Index),它像个缓存区域,临时保存你的改动;最后是 HEAD,指向你最近一次提交后的结果。

  • 本地
    git add <filename>:将文件添加至缓冲区,git add .可将当前目录下所有文件添加至缓冲区。还可用git status查看缓冲区状态,git rm删除缓冲区中不必要的文件。
    git commit -m '代码提交信息':将改动提交至HEAD,但尚未同步至远端仓库。
  • 远端仓库
    git push origin master:将修改推送至远端资料库,origin为资料库名,master为分支名,可根据需要自由指定。

打标签

代码还会有许多修改,但现在已得到了第一个稳定版本,打个标签是个不错的选择。
Git 使用的标签有两种类型:轻量级的(lightweight)和含附注的(annotated)。轻量级标签就像是个不会变化的分支,实际上它就是个指向特定提交对象的引用。而含附注标签,实际上是存储在仓库中的一个独立对象,它有自身的校验和信息,包含着标签的名字,电子邮件地址和日期,以及标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证。一般我们都建议使用含附注型的标签,以便保留相关信息;当然,如果只是临时性加注标签,或者不需要旁注额外信息,用轻量级标签也没问题。
git tag:列出现有标签。
git tag -a v1.4 -m 'my version 1.4':创建一个含附注的标签(-a参数指定)。
git tag v1.4:创建一个轻量级标签,直接给出标签名即可。
打完标签后,git push origin v1.4将标签推送至github,即可在网页上看到新打的标签。

如果要删除一个标签:
git tag -d 标签名:删除本地标签,但远程标签仍存在
git push origin :refs/tags/标签名:删除远程标签

这里还要说说,将代码库恢复至某标签指定的状态,好像是需要使用checkout:
git checkout v1.4。关于这个问题,我也不是很确定。

文件获取

git clone <repository url>:获取远端资料库
git push origin master:将远端资料库master分支推送至本地,并merge到当前分支。

目前我常用的git命令就这些,至于更高级的分支创建与合并等等,留待接下来研究。

参考资料:

1.git命令大全
2.git使用简易指南
3.git book

最新文章

  1. 如何在CentOS 7中禁止IPv6
  2. 转载:[转]如何学好3D游戏引擎编程
  3. mono for android学习过程系列教程(6)
  4. CentOS 6.3下rsync服务器的安装与配置
  5. linux——基本配置
  6. Doolitter分解 三对角矩阵分解 拟三对角分解
  7. (实用篇)PHP中unset,array_splice删除数组中元素的区别
  8. MongoDB-JAVA-Driver 3.2版本常用代码全整理(1) - 增删改
  9. Struts2中通配符的使用
  10. CSS3选择器(三)之伪类选择器
  11. [Warning] TIMESTAMP with implicit DEFAULT value is deprecated
  12. CCF 201312-5 I’m stuck! (暴力,BFS)
  13. jquery实现点击按钮滑动到指定位置
  14. Google Map API v2 步步为营 (二)----- Location
  15. alv行可编辑时带出描述
  16. [HNOI2008]明明的烦恼
  17. Workflow Notification Mailer Setup
  18. django-crontab实现定时任务
  19. 浅谈nodejs和php
  20. tomcat优化,java查看

热门文章

  1. ACM_四数之和
  2. SQLiteDeveloper 工具
  3. LN : leetcode 690 Employee Importance
  4. python--12、数据库进阶
  5. CSS布局整理
  6. Android基础TOP6_1:FrameLyayout和ImageView制作层叠图片
  7. Zynq7000系列之芯片引脚功能综述
  8. dutacm.club_1089_A Water Problem_(dp)
  9. 搭建FileZilla
  10. vs2013打包