一、git和GitHub简单介绍
1.1git和github的区别和联系??这是干啥用的?
git是一个开源的代码版本管理工具,用于解决多人协作开发中代码管理混乱的问题。说白了,就是一个pc端的软件,下载安装完成后就可以用它来上传和更新代码到云端(github),这样的话,团队中其他人都能看到大家的更新和修改等。
而github就是一个用来存放git上传的代码的地方(这个地方也称为仓库),它有属于自己的服务器,我们打开github官网时,就能看到上面各位大神们上传的优质代码。同时也可和团队成员,共享自己团队的代码,就酱子~
注:自己理解的,有不妥地方请多指教
二、git的组成和下载
git下载和安装:
来到git官网:https://git-scm.com/ 点download就自动下载了,
安装过程就是傻瓜式安装 下一步 下一步直到完成
安装完成之后,在文件中或者桌面右键出现Git Bash Here 就是成功的状态
git分为三部分:
- 远程仓库(管理你的代码)
- 本地仓库(放着本地代码)
- 暂缓区(临时缓存区)
三、GitHub创建仓库
github在存你的项目和代码时候,首先得有个专门的仓库来存放。所以在上传项目之前,我们得先在github上创建一个仓库,用来专门我们的项目。
github的登录注册在此就不讲了。
当登录成功后,在页面的右上角点击加号,点击下拉框的第一项:new repository。如下图所示
当创建出一个仓库后,给仓库取个名字,并添加相关的描述,同时选择仓库的可见性(即是否为共有或私有)。
第四步点击完成后,即可跳转到创建好的仓库页面。如下所示:
四、git初次上传项目
完成下载git和在github上创建一个仓库两大步之后,就要开始上传我们的项目啦~
① 在你的项目文件夹下,右键 git bash here
② 输入:git init
指令初始化
第二步会生成一个.git的隐藏文件夹(win10在查看中勾选隐藏的项目即可看到)
③输入 git add .
添加当前目录下的所有文件 (.代表全部)
④输入 git commit -m '你的log信息'
提交代码的时候会让你添加个备注
git add README.md
⑤ 如果当前是电脑第一次使用git ,会出现让你输入此电脑中默认的github账户名和邮箱。邮箱地址和用户名 一步一步输入即可(输入完成后关闭,删除.git文件,整个流程重新走一遍)
第五步,你自己登录一台电脑,只须操作一次
如果你想单独输入,其实它相当于修改:
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
⑥ git remote add origin https://github.com/LittleFish1215/MusicProgect.git
链接你的远程仓库,地址就是你github中刚才创建好的仓库地址。
⑦ git push -u origin master
把本地代码推送到远程仓库
第六步和第七步中,假如第一次操作git,还要输入用户名和密码。
当编辑器中显示下面内容时,即代表代码上传github成功。
注:当推送不成功时,出现报错等信息时,请多将以上步骤多尝试几次。有可能是网速问题,也有可能是github官网问题等(捂脸:今天github被攻击了,github为了保护用户安全,就阻止了用户上传文件,当上传代码时就出现了超时的问题)。
当上传成功后,打开github创建的仓库查看里面是否有上传的文件。
五、git其他项目成员的下载、更新,上传等
这一套,相当于是进公司每天的工作流程。早上进公司,下代码,拉取最新的代码。完事了,一天结束了,下班前,把自己写好的代码再传上去…反反复复,然后秃头绝顶…
5.1 假如你是李四,第一天进入公司,需要下载领导上传成功的github中的项目时
①打开本地文件夹,建个lisi ,然后右键git bash here
②输入克隆命令:git clone https://github.com/LittleFish1215/MusicProgect.git
(后面的网址是你领导给你的地址,好的叭),把远程仓库的内容克隆到本地 ,这个操作对于新项目,只操作一遍。
③直到出现100%,done时,代表克隆成功。
成功界面:在lisi文件下出现了MusicProgect–.git(隐藏文件夹)和domo文件夹。
(对8起,刚发现,把project拼错了啊啊啊啊~泪流满面ing)
5.2 假如你还是李四,要下班了,你不能直接走人了啊,你得把你今天写的项目传到github上
每天下班之前,要提交代码,提交之前一定要更新!!!!
①git add .
(.代表所有,你还可以输入文件名 比如 git add 1 或者git add 1 2 3)
②git commit -m 'lisi今儿加了样式
③git push
上传代码
三步完成后,控制台出现以下内容,表示上传成功。
github中上传成功的界面:
5.3 假如你还是李四,第二天上班,大清早你得去更新你的项目(因为你的队友肯定也上传他的代码了)
每天进入公司的第一件事,更新代码
①进入到你克隆之后的项目文件夹,看到**.git**文件夹再右键点击Git bash here
②git pull
(拉取,把远程仓库的内容拉到本地)
如果有更新就自动下载了,如果没有更新,就会显示一段英文,表示是最新的(Already up to date)
六、git遇到的冲突问题及解决办法
6.1 假如今天你是王五,李四修改了同一个文件,你改了还没提交,对方已经提交了,你上传之前会先更新,更新的时候就出现错误。
①你在提交你的代码之前一定要pull一下:git pull
②你就会看到一些关于覆盖的错误提示:如下所示
error: Your local changes to the following files would be overwritten by merge:
demo/index.html
Please commit your changes or stash them before you merge.
问题:错误:您对以下文件的本地更改将被合并覆盖:demo/ index.html
请在合并之前提交或隐藏您的更改。
此时pull完,看到错误提示后,千万啥也不做,直接git add . git commit -m和git push !!!!你会把队友的直接覆盖掉的啊啊!!!!! 这是坑队友坑自己啊啊啊!
合并失败,要手动合并
自己手动合并代码,然后再走一遍更新流程
再走一遍更新流程
git pull (拉取,把远程仓库的没从拉去下来)
如果有更新就自动下载了,如果没有更新,就会显示一段英文,表示是最新的(Already up to date)
每天下班之前,要提交代码,提交之前一定要更新!!!!
git add .(.代表所有,你还可以输入文件名 比如 git add 1 或者git add 1 2 3)
git commit -m ‘添加这个备注信息’
git push