git超简易使用教程

git简介

git是一个分布式版本控制系统,分布式的意思简单来说大家可以在自己本地仓库各自操作。

coding是一个国内的代码托管平台,相似的还有码云。使用不同的平台时也可以在相应的平台查看帮助。

git与coding配合可以实现代码的云端保存,成员之间的高效合作,可以创建不同的分支来进行不同模块的开发,将自己的代码更新到云端或者在云端下载他人更新的最新版本,也可以使用版本回退等功能控制版本。本文的一些命令以coding平台的操作为例。

本文是git超简易使用教程,初次使用者先按步骤完成“git初始化与远程关联部分”,然后根据自己的身份(创建者或成员)使用push命令将自己的代码推向云端或者使用pull命令将云端的代码拉向本地,再进行之后的开发。

如果需要更详细的git教程,可以查看git的官方文档(有中文的)
https://git-scm.com/book/zh/v2
也可以查看廖雪峰的git教程
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

git初始化与远程关联

使用git

新建立一个文件夹,在文件夹中点击右键,选择Git Bash Here

初始化本地仓库
git init

将当前的文件夹作为Git工作区,并且建立Git版本库(请不要修改或删除.git文件夹里面的内容),这时候会创建一个主分支

配置SSH Key

配置ssh key是为了和远程仓库建立联系

$ ssh-keygen -t rsa -C <邮箱>

把最后的<邮箱>换成自己的邮箱,回车执行命令后会叫选择一个文件夹来放公钥,可以直接回车选择默认的
然后打开C盘,将用户主目录下的.ssh文件夹中id_rsa.pub中的内容复制出来
然后打开coding的页面,账户->SSH公钥->将刚才复制的内容粘贴到公钥内容中,点击添加按钮

$ ssh -T git@git.coding.net

yes
然后会出现什么什么successfully的字样,这个命令是完成首次链接信任主机

关联远程仓库
git remote add <远端仓库名> <远端仓库地址>

中间的远端仓库名是你在本地给远程仓库取个代号,因为可以关联多个远程仓库,所以代号用来区分,一般写为origin,后面的地址就是coding云端仓库的地址,最好用SSH方式(前边的SSH公钥配置就是为了这个)

git remote

查看自己关联的远程仓库

git remote -v

查看自己关联的远程仓库以及权限

git获取远端更新

将远端的项目克隆到本地
git clone <地址>

会将远端仓库的内容复制到本地,但是会在所有文件及文件夹的最外面设置一个文件夹,名字为远端的项目名,第一次从远端获取项目更推荐使用下面的pull命令

将远端的项目pull到本地
git pull <远端仓库名> <远端分支名>:<本地分支名>

取回远程主机某个分支的更新,再与本地的指定分支合并,第一次从远端获取项目也可以用这个,或者在远端有了更新时,可以用此操作来更新本地的分支

当远端分支和本地分支名相同时,可以写成下面这样

git pull <远端仓库名> <分支名>
使用fetch+merge获取远端更新
git fetch <远端仓库名> <远端分支名>

先获取远端更新

git diff <本地分支名> <远端仓库名>/<远端分支名>

将获取的更新与本地分支进行比较

git merge <远端仓库名>/<远端分支名>

再将远端更新与本地当前分支合并

git提交修改

将工作区的修改add到暂存区
git add <文件或文件夹的名字>

也可以直接使用以下命令add全部修改

git add .

此写法是在add后面空一格然后打一个点

查看status
git status

git status命令可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件

提交修改到仓库
git commit -m "引号中是此次提交修改的简单介绍"
将本地的项目push到远端
git push <远端仓库名> <本地分支名>:<远端分支名>

将本地的某个分支推到远端,当远端没有这个分支时,会被创建

当远端分支和本地分支名相同时,可以写成下面这样

git push <远端仓库名> <分支名>

git分支管理

创建新的分支
git branch <分支名>

创建一个新的分支,注意并不会切换到这个分支

查看已有的分支
git branch

上面这行命令是查看本地的分支

git branch -a

查看所有分支,其中绿色的是当前分支,白色的是本地分支,红色的是远端的

切换分支
git checkout <分支名>

切换到另一个分支上进行操作

删除分支
git branch -d <分支名>
合并分支
git merge <另一个分支名>

将另一个分支和当前分支合并

git版本控制

显示提交日志
git log

显示每次的提交记录,按Q可以退出,上下键翻页(记录太多的话)

版本回退
git reset --hard <某个版本号>

回退到某个版本,版本号在git log中查看

回退反悔

当回退到某个版本,然而又反悔了,想要回到未来的版本时
先使用git reflog查看之前的命令记录,然后找到对应commit记录前面的序号
然后git reset --hard 记录前面的序号就可以回退到未来的版本了

最后

其实这篇文章是去年项目用git时做的笔记,同时也分享给组员,让大家快速上手。没相到这个暑假实习又用到它了,就把它整理出来。

当然它也仅仅适用于快速上手,想要用好git,特别是版本控制和分支管理的部分,还是得去看更高级的教程。

如果这篇文章能帮到你的话,我也会感到很高兴的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,214评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,307评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,543评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,221评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,224评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,007评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,313评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,956评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,441评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,925评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,018评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,685评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,234评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,240评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,464评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,467评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,762评论 2 345

推荐阅读更多精彩内容

  • Git是目前最流行的版本管理系统,也是最先进的分布式版本控制系统(distributed version cont...
    pro648阅读 5,676评论 1 17
  • 以下内容是我在学习和研究Git时,对Git操作的特性、重点和注意事项的提取、精练和总结,可以做为Git操作的字典,...
    科研者阅读 4,082评论 4 50
  • 一、今天学到了什么? 今天的学习让我认清了一个事实,成功者成功的原因和做事方法都差不多,失败者失败的原因却千差万别...
    善圈_天随子夫阅读 330评论 0 0
  • 一.为什么需要蓝海战略? 在当下中国,各行各业,已经严重产能过剩,例如钢铁、水泥、服装等,连房子也是特别多的库存。...
    胡贤彬阅读 1,330评论 0 13
  • 我的梦想是成为一个很会说话的人。 七十年代末我出生于浙南的农村,按理说,江南水乡润泽的大地应该养育出一个水灵灵粉扑...
    两个梨窝阅读 337评论 0 0