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

[经验分享] git实战(3)--提交到本地仓库

[复制链接]

尚未签到

发表于 2018-9-17 13:34:36 | 显示全部楼层 |阅读模式
  上一节就提到了仓库的概念,其实初始化git后,git将本地空间分成两部分,一部分是工作区(Working Directory),studygit目录就是工作区存放我们自己的文件,另外一个就是版本库(Repository)也称为仓库,在工作区目录下有一个.git的隐藏目录,该目录不属于工作区,就是仓库。
houenxun@studygit$ ls -al  total 0
  drwxr-xr-x   3 houenxun  staff   102  7  9 19:18 .
  drwxr-xr-x+ 52 houenxun  staff  1768  7  9 19:18 ..
  drwxr-xr-x  10 houenxun  staff   340  7  9 19:20 .git
  通过git status 我们可以实时查看当前仓库的状态
houenxun@studygit$ git status  On branch master
  Initial commit
  nothing to commit (create/copy files and use "git add" to track)
  当前处于master分支,并且没有任何东西需要提交,这是我们通过touch命令在工作区中创建一个文件,并再次查看仓库信息
houenxun@studygit$ touch readme.txt  houenxun@studygit$ git status
  On branch master
  Initial commit
  Untracked files:
  (use "git add ..." to include in what will be committed)
  readme.txt
  nothing added to commit but untracked files present (use "git add" to track)
  Untracked file 表示readme.txt是新增的文件,在仓库中没有版本信息。下面我们将readme.tex提交到本地仓库中。
houenxun@studygit$ git add readme.txt  houenxun@studygit$ git commit -m "commit readme.txt"
  [master (root-commit) 32a7706] commit readme.txt
  1 file changed, 0 insertions(+), 0 deletions(-)
  create mode 100644 readme.txt
  houenxun@studygit$
  这里可能有人会问题,提交本地仓库,为什么先进行add操作然后再进行commit操作?
  其实git的仓库又进一步划分出了一块暂存区(stage),通过add命令只是将文件提交到了stage中,类似保存草稿。
  现在查看一下git的状态
houenxun@studygit$ git status  On branch master
  nothing to commit, working directory clean
  当前没有任何文件需要提交。如果想查看提交记录使用git log
houenxun@studygit$ git log  commit 32a7706df9f266522bdb223e8f4308cfccec01ba
  Author: houenxun
  Date:   Thu Jul 9 20:08:48 2015 +0800
  commit readme.txt
  其中32a7706df9f266522bdb223e8f4308cfccec01ba表示提交操作的唯一id
houenxun@studygit$ touch hello test test2  houenxun@studygit$ ls
  helloreadme.txttesttest2
  houenxun@studygit$ git add *
  houenxun@studygit$ git status
  On branch master
  Changes to be committed:
  (use "git reset HEAD ..." to unstage)
  new file:   hello
  new file:   test
  new file:   test2
  下面我们一次创建多个文件,通过git add添加到暂存区中后看一下当前仓库的状态!另外需要说明的是git add 可以一次添加多个文件,即可以通过git file1 file2的形式,也可以通过通配符匹配多个文件!
houenxun@studygit$ git  commit -m "hello test test2"  [master 75014c6] hello test test2
  3 files changed, 0 insertions(+), 0 deletions(-)
  create mode 100644 hello
  create mode 100644 test
  create mode 100644 test2
  houenxun@studygit$ git log
  commit 75014c60c33dca4873f80a80d3892cfef7b59340
  Author: houenxun
  Date:   Thu Jul 9 20:41:33 2015 +0800
  hello test test2
  commit 32a7706df9f266522bdb223e8f4308cfccec01ba
  Author: houenxun
  Date:   Thu Jul 9 20:08:48 2015 +0800
  commit readme.txt
  houenxun@studygit$
  再次通过git commit 命令提交,查看提交记录,是不是发现有了两个版本!
  这里还有一个小功能,git log file 可以查看单个文件的提交记录
houenxun@studygit$ git log readme.txt  commit 32a7706df9f266522bdb223e8f4308cfccec01ba
  Author: houenxun
  Date:   Thu Jul 9 20:08:48 2015 +0800
  commit readme.txt
  houenxun@studygit$
  好了有关本地提交的操作就写到这里,但上面只是做了版本记录的作用,其实并未真正展示版本控制系统的真正优势,下节继续!



运维网声明 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-588464-1-1.html 上篇帖子: git实战(2)--本地初始化 下篇帖子: git使用详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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