Git 的教程很多,不过基本都是针对每一个API的解读或是具体问题的例子。
这里按照工作流程来记录一下 Git 的使用。
之所以会想到把大家耳熟能详的 Git 拿出来整理成一篇文章,是因为最近公司招了几个实习生,问他们git会不会用,都说会,什么 git pull 、git push 的。可是当准备工作的时候,就来问我,我的 Git 怎么找不到项目,怎么不能 push 等等。
准备工作
一般流程:每一个新人进入企业以后,一般会由HR给开通企业邮箱。
当拿到邮箱信息以后,发送邮件给相应领导或是运维负责人申请开通 Git 权限。
当有了 Git 权限以后,再给直属领导发邮件,请他给你加入到你需要参与的 Git 项目中。
(一般这种事都是领导层的权限,有的公司可能在你入职的时候自动就帮你开通好了,具体事宜略有差异,总之一句话,要先申请 Git 权限,再申请项目权限。)
在这里补充一句,一般公司的 Git 都是搭建在自己的服务器上,很少有使用公共的,所以如果不了解的,可以和同事或是领导确认一下。
当有了权限以后,就可以继续看后面的内容了。
第一步:添加 SSH Keys
SSH key提供了一种与GitHub通信的方式,通过这种方式,能够在不输入密码的情况下,将GitHub作为自己的remote端服务器,进行版本控制。
参考文章:如何生成SSH key
第二步:进入Dashboard查看项目列表
一般的新人进入一家公司都是参与已有项目,就算是新项目,也基本不会让新人自己创建仓库,所以咱们就先按照项目存在的情况讲解。
下图就是我参与的所有项目列表。
列表上可以看到中间列是所有的操作记录,有我自己的,也有别人的。
Git 就是这样一个地方,每一步操作都在上面,所以请规范使用,否则,真的丢人呀~
大家可以看到我的提交记录是带着头像的,其他同事的没有,这个可以自己在Setting里进行设置,这都是小事,非重点,有时间的时候自己点点就明白了。
还有就是我们的 Git 没有进行汉化,不过也就是多记忆几个单词,相信难不倒你的~
第三步:git clone 相应的项目到本地
下图是当前项目。clone项目到本地的命令是 git clone [project-url]
项目的地址一般会有两种,一个是SSH版本的,一个是HTTP版本的,我个人习惯于使用SSH。并且我们在第一步的时候已经添加了SSH Keys,所以可以直接这样使用。
二者的区别:SSH 和 HTTP 的区别
-
打开bash并输入以下命令进入到根目录
(我用的linux命令行)
//进入到根目录
cd ~
-
切换到工作目录
建议创建一个工作目录,放和工作相关的内容,有的时候你可能负责的不只一个项目。
// 创建一个叫 myProject 的空文件夹
mkdir myProject
// 进入 myProject 文件夹
cd myProject
-
clone 目标项目到myProject文件夹
执行以下命令,将clone的地址换成你自己的项目地址
git clone git@git.xxx.com:project-name.git
执行结果如下图:-
进入到项目目录
这里为什么要说?发现很多同学执行完了clone这一步,就在当前(myProject)目录开始做什么git pull/git push 操作,然后问我,为什么报错说不是git仓库?我刚刚已经clone下来了呀...
当前的目录只是我们创建的工作目录,我们在clone的时候会在工作目录下再创建一个和项目同名的目录,开存放项目代码,这个同名目录才是项目的仓库。
执行下面的命令,进入项目仓库:
// 进入项目目录project-name
cd project-name
只有执行完了这行代码,咱们才真正进入了项目。
-
查看项目状态
执行以下命令查看项目状态:
// 查看git仓库状态
git status
从下图我们可以看到当前项目停留在master主干上,并且咱们的工作区是干净的,没有需要提交或是更新的内容。
至此,我们就成功的把一个已有的项目 clone 到了本地。
是的,写这句话,就代表着这篇文章不打算继续写了,因为该干活了...并且以上是小白比较容易遇到的问题,之后的什么 git pull/git push 等等很少有人问我怎么用了。
很多的时候,难的并不是1以后的事情,只是不知道怎么从 0 到 1 。