ps:本文章有点长,Git和GitHub分开说太容易搞乱套了,小编尽量用最精简的表达,一篇速通Git
Git,想必是很多程序员小伙伴写代码的第二步。为啥是第二步?因为第一步通常是……安装个代码编辑器😂
那Git到底是个啥?咋用呢?别急,咱们往下看
Git是啥?
要聊Git,必然绕不过大家都熟悉的GitHub。简单来说:Git就是用来同步电脑上的代码和GitHub平台上的代码的工具,类似一个“手机同步小助手”
但它绝不仅仅是同步那么简单。Git最牛、也最被人离不开的功能是——代码版本管理
你想想,咱们写代码,一天折腾出三四个版本太正常了。有时候需求一变,就得把代码回滚到前几天甚至前几周的状态🤐。这时候,代码的版本管理就是救命稻草,让我们随时回到任何一个想要的时间节点
1、先安装
要想用Git,首先还是要先安装它
Git的官网在这儿 👉git-scm.com/
下载对应电脑系统的安装包,双击打开,一路点击“下一步”就行
验证安装:
git --version # 查看git版本号
查看版本号,出来就说明成了
2、连接Github
2.1、绑定账户和邮箱
首先注册GitHub账户,官网在这儿👉:github.com/
国内网络环境打开会很慢,有条件的话建议科学上网
记住注册时的邮箱和密码,接下来要用
在命令行执行命令,使用你自己的GitHub的用户名和邮箱,来进行账户匹配
git config --global user.name "替换成自己GitHub用户名"
git config --global user.email "替换成自己的GitHub邮箱"
然后执行git config --global --list检查一下对不对
(注意:有些小伙伴在GitHub开了隐私保护,邮箱部分会是一个伪装地址,对不上是正常的,别慌)
2.2、匹配密钥(推荐SSH)
只是绑定用户名邮箱,安全系数还不够。代码是核心资产,还需要额外配置一个SSH密钥,这样上传下载才有保障(GitHub默认)
小编推荐用 SSH 连接,HTTPS方式在传输速度和安全性上差一些(再加上国内网络,经常上传代码失败😭)
2.2.1、在电脑上
执行生成密钥命令
ssh-keygen -t ed25519 -C "替换成自己的Github邮箱" # 生成 SSH 密钥对
然后会问你保存路径和密码。直接敲两下回车保持默认即可
运行命令,复制密钥
pbcopy < ~/.ssh/id_ed25519.pub # Mac的复制命令
cat ~/.ssh/id_ed25519.pub # Windows的复制命令
2.2.2、在GitHub上
登录 GitHub 网站,点击头像 → Settings
找到 SSH and GPG keys,点 New SSH key
Title随便写,Key粘贴刚刚复制的密钥,最后点 Add SSH key 保存
2.3、验证联通
执行命令,验证是否连接成功
ssh -T git@github.com
联通成功
后面的but,不是报错(GitHub只支持通过Git进行远程操作,不允许直接执行命令操作)
3、代码管理
别急别急,前面折腾半天都是在连接匹配GitHub,现在才开始进行代码的同步和管理😂
3.1、在GitHub上
新建一个代码仓库
输入仓库名称,点击“创建”
把这个地址复制下来
3.2、在电脑上
找到代码文件夹,比如小编这里有个 baidu1 项目
在项目的根目录,依次执行命令
# 1. 初始化Git仓库
git init
# 2. 把所有文件添加到暂存区
git add .
# 3. 提交到本地仓库,并写一句说明
git commit -m "Initial commit"
# 4. 把本地仓库和GitHub上的远程仓库连起来(注意用你自己的地址)
git remote add origin git@github.com:dafei-python/-.git
# 5. 推送到GitHub
git push -u origin main
执行过程大概长这样:
3.3、检查结果
再次打开GitHub,本地的代码已经完整地上传到了GitHub上面去了
而且呢,如你所见,我们可以使用这种方式能建立非常多个不同的仓库,来存储我们不同用途的代码
4、每次提交流程(重点!)
以后每次提交代码,就不用再敲那么多行了。我们只要记住下面这几个命令
git branch # 看看当前在哪个分支
git pull # 先拉取GitHub上最新的代码,防止冲突
git status # 看看哪些文件被改动了
git add . # 把改动加入暂存区
git commit -m "更新了啥:比如修复了登录bug" # 提交到本地
git push # 推送到GitHub
小伙伴们注意哈,这几步已经是最精简的流程了,一个都不要省!
尤其 git branch 和 git pull,千万别图省事跳过去。好多老手为了省事,直接 add、commit、push 三连,结果就是直接把别人的代码全覆盖了,整个仓库一夜回到解放前😂
所以,如果你是刚接触Git,在提交代码的时候,请一定严格按照顺序执行所有命令!