设为首页 收藏本站
查看: 1028|回复: 0

[经验分享] 【记录】GIT 常用命令

[复制链接]

尚未签到

发表于 2018-1-15 17:44:23 | 显示全部楼层 |阅读模式
GIT 学习笔记  

  
集中化的版本控制系统  CVCS
  
分布式版本控制系统  DVCS
  

  
Git 基础要点 http://progit.org/book/zh/ch1-3.html
  
1:直接快照,而非比较差异
  
2:近乎所有操作都可本地执行
  
3:时刻保持数据完整性 (Git 使用 SHA-1 算法计算数据的校验 ,40 个十六进制字符(0-9 及 a-f)组成)
  
4:多数操作仅添加数据
  
5:三种状态(已提交(committed),已修改(modified)和已暂存(staged))
  

  
GIT安装  http://progit.org/book/zh/ch1-4.html
  

  

  
配置GIT http://progit.org/book/zh/ch1-5.html
  
$ git config --global user.name "John Doe"
  
$ git config --global user.email johndoe@example.com
  

  
查看配置
  

  
git config --list
  

  

  

  

  
GIT 基础
  
初始化仓库
  
$ git init
  
$ git add *.c
  
$ git add README
  
$ git commit -m 'initial project version'
  

  
从现有仓库克隆
  
$ git clone git://github.com/schacon/grit.git
  

  
仓库状态
  
$ git status
  

  
跟踪新文件
  
$ git add fileName
  

  
忽略某些文件
  
$ cat .gitignore
  
*.[oa] //忽略以 .o 或 .a 结尾的文件
  
*~ //忽略所有以波浪符(~)结尾的文件
  

  
查看已暂存和未暂存的更新
  
$ git diff
  
$ git diff --cached  //已经暂存起来的文件和上次提交时的快照之间的差异
  

  
提交更新
  
$ git commit -m "message" // 简单的提交方式
  
$ git commit -a -m "message" // 跳过add 步骤 把已经跟踪的文件全部提交
  

  
移除文件
  
$git rm fileName
  
$ git rm --cached readme.txt //移除跟踪但不删除文件
  

  
移动文件
  
$ git mv file_from file_to
  

  
日志
  
$ git log
  
$ git log –p -2 // -p 提交内容的差异  -2最近两次
  
$ git log --stat//显示简要的增改行数统计
  

  
修改最后一次提交
  
$ git commit --amend
  
//---第2次提交修改了第一次提交
  
$ git commit -m 'initial commit'
  
$ git add forgotten_file
  
$ git commit --amend
  

  
取消已经暂存的文件
  
$ git reset HEAD fileName
  

  
取消对文件的修改(回退到以前未修改的状态) //很有用 也很危险
  
$ git checkout -- fileName
  

  
远程仓库的使用
  

  
查看当前的远程库
  
$ git remote -v // -v 列出远程地址
  

  
添加远程仓库
  
$ git remote add Name git://github.com/paulboone/ticgit.git
  

  
从远程仓库抓取数据
  
$ git fetch [remote-name]
  
$ git pull// 合并远程的全部分支到本地(不确定)
  

  
推送数据到远程仓库
  
$ git push origin master //推送 origin 到 master
  

  
查看远程仓库信息
  
$ git remote show origin
  

  
远程仓库的删除和重命名
  
$ git remote rename pb paul// pb 改成 paul  分支对应前缀也会发生变化
  

  
$ git remote rm paul// 貌似删除
  

  

  
打标签 http://progit.org/book/zh/ch2-6.html
  
列显已有的标签
  
$ git tag
  
$ git tag -l 'v1.4.2.*'//搜索标签
  

  
新建标签
  
$ git tag -a v1.4 -m 'my version 1.4' //新建v1.4标签 消息是 my version 1.4
  

  
分享标签
  
$ git push origin [tagname] //提交 一个标签
  
$ git push origin --tags // 推送所有本地标签
  

  
删除
  
$ git tag -d [tagname] //删除标签
  
$ git push origin :refs/tags/tagname //删除远程标签
  

  

  
技巧和窍门
  
提示 // 敲两次tab
  
Git 命令别名
  
$ git config --global alias.co checkout // git co 代替了 git checkout
  

  

  
分支
  

  
创建分支
  
$ git branch testing // 创建testing
  
$ git checkout testing// 切换到testing
  
$ git checkout -b iss53 //创建并切换到iss53
  
$ git merge hotfix //把hotfix 分支合并到当前分支
  

  
查看分支
  
$ git branch -v//最后一次commit信息
  
$ git branch --merged | --no-merged//筛选出你已经(或尚未)与当前分支合并的分支
  

  
删除
  
$ git branch -D testing
  

  
推送
  
$ git push origin serverfix//把当前推送到 serverfix分支
  

  
更新同步
  
$ git fetch
  

  
删除远程分支
  
git push origin :branchname
  

  
git branch  –r //查看所有分支信息
  

  
//获取远端分支
  
$ git checkout -b sf origin/serverfix
  

  

  
服务器上的GIT
  
---http://progit.org/book/zh/ch4-3.html
  
生成 SSH 公钥  ---http://github.com/guides/providing-your-ssh-key。
  
$ cd ~/.ssh //公钥的位置
  
$ ls

  
authorized_keys2 >
  
config           >  

  
$ ssh-keygen //如果上面看不到公钥  可以用次来创建 会要求输入存放位置 和密码
  

  

  
储藏
  
$ git status //储藏
  
$ git stash list//储藏列表
  
$ git stash apply//应用储藏
  

  
参考资料
  
http://zh.wikipedia.org/wiki/Git
  
http://progit.org/book/zh/
  

  

  

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435409-1-1.html 上篇帖子: 初学git:用git bash往github push代码 下篇帖子: git使用记录
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表