首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Github,Gitlab简介及Git入门

Github,Gitlab简介及Git入门

作者头像
用户1622570
发布2018-04-12 09:25:47
1K0
发布2018-04-12 09:25:47
举报

刚搬了家,房子还没有网,这篇文章是开着热点写的,求赞求赞。哈哈哈

如果到现在为止,你还没听过Git,或者用过Git,那建议尽早学习一下,因为很有用。虽然是做算法的,但是编程还是必不可少的。话说在1年前,这三个我确实没用过,也没听过,后来知道了Github,在到现在知道了Gitlab,而且每天都要用Git来管理项目的代码。(主要是merge老大的代码,哭)。下面开始介绍,也许我表达的不够专业哈,但是你能听懂就行。

好,我先说下Github,Github是一个提供代码托管服务的网站,就是你可以把你的代码放在他哪里,不怕丢失。放的时候有2种方法,一种是公开你的代码(所有人可见),这样是免费的,还有一种是只有你自己能看到代码(仅自己可见),但是这样是收费的。然后说下Gitlab,Gitlab和Github差不多的,区别在于在Gitlab上托管仅自己可见的代码的时候,是不需要收费的,这就方便了类似公司自己开发的项目,仅内部成员可见,外部是看不到的。最后说下Git,Git是用来管理代码的一个工具,为什么管理代码呢?可能刚接触编程的时候感觉不到这个有多重要,等你要开始做一些项目的时候,就感受很深了。举个栗子,就像我们些毕业论文的时候一样,可能会有很多个版本,什么改1,改2,改3.。。。等等各种取名字的方法,但是这样就显得很乱,有没有一种工具可以帮我来管理,这样可以解决我改错了可以回退回去等等问题。Git应用而生,Git是项目开发中管理代码的神器。说一下项目开发中都会面临哪些问题吧。首先做一个项目一般至少一个人或者几个成员一起协作完成,那人数比较多的时候,就会有个管理者(技术老大),下面有几个合作者(小弟)。然后每个人都会再自己本地写代码,代码存放的位置,叫做本地仓库,那么放在Github或者Gitlab上的代码叫做远程仓库。然后每个人每天都会写一些代码,保存在本地仓库,然后需要提交到远程仓库,老大看了以后,如果没有问题就会加到项目的主分支上去。这里要说下分支的概念,分支可以代表每个不同的开发者,然后有主分支和其他分支的区别。主分支就是最终需要上线的代码,而其他分支是开发中的代码。每次主分支代码更新以后,小弟们需要把主分支的代码下载下来,继续开发新的任务。以此循环这个过程。

好,说了一堆废话,下面开始一些干货介绍,这里只针对Linux系统来说明,Windows下面有客户端,只要点点点,基本可以解决问题,我没用过,不熟悉。

1. Git安装

sudo apt-get install git-all

2. 常用命令

配置Git:

git config --global user.name “your name”

gitconfig --global user.email “your email”

用户名和邮箱是Github或者Gitlab上的。

查看配置: git config -l,显式自己的用户名和邮箱说明配置对了,

新建Git版本库: git init

添加文件到缓存区 :

git add README.md

提交文件到仓库:

git commit -m “关于代码的解释性文字”

提交代码到远程仓库:

git push -u origin master

gitpush origin master //将本地master分支推送到origin远程分支。

查看提交历史记录:

git log //显示所有提交的历史记录

git log --graph //输出分支变换的图

版本回退:

git reset --hard HEAD^ //回退到上一个提交版本

git reset --hard HEAD^^ //回退到上上一个提交版本

git reset --hard “commit_id” // 回退到commit_id指定的提交版本

撤销修改:

git checkout --README.md //后面跟的是需要撤销的文件的名字

gitcheckout --. // 撤销当前目录下所有修改的文件

丢弃已经添加到缓存区的修改 :

git reset HEAD README.md

新建分支:

git checkout -b new_branch_name //创建分支并切换到新建分支

或者 git branch new_branch_name

切换分支:

git branch new_branch_name

删除分支:

git branch -d new_branch_name

查看Git状态: git status

从远程仓库克隆到本地仓库:

git clone * // *号表示要克隆的代码链接,有http和ssh两种方法。

从远程仓库更新本地仓库:

git checkout master

git pull

git checkout ‘自己分支的名字’

git merge mster

添加SSH key:

首先创建一个ssh key:

ssh -keygen -t rsa -C “邮箱地址”

//直接输ssh -keygen,貌似也可以。如果没有ssh,需要先安装

然后根据输出的信息找到指定目录下的.pub后缀名的文件,打开复制信息。然后打开Github到自己主页下的setting, 有个添加ssh key的选项,把刚才复制的信息粘贴进去就好了。这样每次clone代码的时候就不需要输用户名和密码了。

看完上面的教程,在实际使用中难免会遇到各种问题,这都是正常的,反正你要相信,肯定是中间那里出来问题,不要怀疑人生。如果在使用中遇到问题,欢迎与我交流,乐意为大家解决。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-11-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习和数学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
代码托管
CODING 代码托管(CODING Code Repositories,CODING-CR)是为开发者打造的云端便捷代码管理工具,旨在为更多的开发者带去便捷、高效的开发体验,全面支持 Git/SVN 代码托管,包括代码评审、分支管理、超大仓库等功能。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档