Git的基本使用

简介: Git的基本使用

Git是什么?

640.jpg


Git是目前世界上最先进的分布式版本控制系统(没有之一)。

Git有什么特点?简单来说就是:高端大气上档次!


那什么是版本控制系统?

如果你用Microsoft Word写过长篇大论,那你一定有这样的经历:

想删除一个段落,又怕将来想恢复找不回来怎么办?


有办法,先把当前文件“另存为……”一个新的Word文件,再接着改,改到一定程度,再“另存为……”一个新文件,这样一直改下去,最后你的Word文档变成了这样:


来自网络的图片

640.jpg


过了一周,你想找回被删除的文字,但是已经记不清删除前保存在哪个文件里了,只好一个一个文件去找,真麻烦。


看着一堆乱七八糟的文件,想保留最新的一个,然后把其他的删掉,又怕哪天会用上,还不敢删,真郁闷。


更要命的是,有些部分需要你的财务同事帮助填写,于是你把文件Copy到U盘里给她(也可能通过Email发送一份给她),然后,你继续修改Word文件。一天后,同事再把Word文件传给你,此时,你必须想想,发给她之后到你收到她的文件期间,你作了哪些改动,得把你的改动和她的部分合并,真困难。


于是你想,如果有一个软件,不但能自动帮我记录每次文件的改动,还可以让同事协作编辑,这样就不用自己管理一堆类似的文件了,也不需要把文件传来传去。如果想查看某次改动,只需要在软件里瞄一眼就可以,岂不是很方便?


这个软件用起来就应该像这个样子,能记录每次文件的改动:

版本 文件名 用户 说明 日期
1 test.doc 张三 创建文件 2018年2月10日 21:12:52
2 test.doc 李四 增加项目要求 2018年3月1日 12:27:22
3 test.doc 王五 修改项目要求 2018年3月10日 20:29:15


这样,你就结束了手动管理多个“版本”的史前时代,进入到版本控制的20世纪。


常用命令

创建SSH KEY: ssh-keygen-t rsa-C"youremail@example.com"


用户主目录 .ssh目录,里面有 id_rsaid_rsa.pub两个文件 id_rsa是私钥,不能泄露, id_rsa.pub是公钥


在Github上创建一个新仓库


克隆到本地: git clone git@github.com:xxxx


文件修改增加到暂存区 git add filename


当前文件夹所有文件都增加到暂存区 git add.


提交更改: git commit-m"modified what"


本地修改提交到远程仓库master分支(默认分支) git push origin master 或者 git push-u origin master 或者 git push-u


查看git日志: git log


本地回退到某个版本 git reset--hard log_id


本地回退更新到远程仓库 git push-f origin master


更新你的本地仓库至最新改动,执行: git pull


查看当前分支 git branch或者 git branch-a


新建分支 git branch debug


创建一个叫做“feature_x”的分支,并切换过去: git checkout-b feature_x


切换分支: git checkout master


删除分支: git branch-d feature_x


分支推送到远程仓库 git push origin<branch>


合并其他分支到当前分支(例如 master),执行: git merge<branch>


增加标签,如1b2e1d63ff版本为1.0.0 : git tag1.0.01b2e1d63ff


假如你操作失误(当然,这最好永远不要发生),你可以使用如下命令替换掉本地改动: git checkout--<filename>


此命令会使用 HEAD 中的最新内容替换掉你的工作目录中的文件。已添加到暂存区的改动以及新文件都不会受到影响。



目录
相关文章
|
6月前
|
存储 开发工具 git
Git的简介以及基本使用
Git的简介以及基本使用
|
7月前
|
NoSQL Linux 开发工具
【Linux】第十站:git和gdb的基本使用(下)
【Linux】第十站:git和gdb的基本使用
71 0
|
7月前
|
NoSQL Linux 开发工具
【Linux】第十站:git和gdb的基本使用(上)
【Linux】第十站:git和gdb的基本使用
28 0
|
12月前
|
数据可视化 网络安全 开发工具
git可视化版本控制工具SourceTree的基本使用
git可视化版本控制工具SourceTree的基本使用
213 0
|
Linux 开发工具 数据安全/隐私保护
【Git】Git 的基本使用
【Git】Git 的基本使用
76 0
|
缓存 开发工具 数据安全/隐私保护
git基本使用和github使用仓库拉取和提交
git基本使用和github使用仓库拉取和提交
|
网络安全 开发工具 git
Git的基本使用
Git的基本使用
60 0
|
开发工具 git Perl
Git基本使用
Git基本使用
91 0
|
开发工具 git Docker
git:github的tag标签基本使用和自动发布软件包
git:github的tag标签基本使用和自动发布软件包
249 0
git:github的tag标签基本使用和自动发布软件包
|
关系型数据库 MySQL Shell
团队开发中git的基本使用和多人协作合并管理
最近忙于公司内部流程审批系统,团队在我未入职公司前,一直未使用版本控制,导致多数人不会使Git,开发人员对Git不熟练,项目版本控制受阻(开发人员普遍觉得sftp方便); 由我编写开发文档规范: 开发规范文档(包括:Php、Git、Mysql);
113 0