1、Git环境配置
设置 Git 全局用户名:
git config --global user.name "xxx"
设置 Git 全局用户邮箱:git config --global user.email "yyy"
查看配置:git config -l
查看全局配置:git config --global --list
① 配置完会在C:\Users\Administrator目录下生成.gitconfig配置文件,里面记录着刚才的配置信息
② 这两个配置的作用是,以后提交代码的时候会记录下来是谁提交的
③ 当然这个用户名和邮箱不一定但最好是要与自己的github账号一样,第一是为了便于区分是谁提交的,谁谁提交一看便知,不至于说看到个abc用户提交了问半天才知道是谁,第二是当我们把代码提交到远程仓库的时候,会根据提交者的邮箱去关联github的用户
2、配置 SSH KEYS
生成 SSH 密钥对:
ssh-keygen -t rsa
查看计算机上 SSH 密钥的公钥内容(然后将公钥配置在github账号上):cat ~/.ssh/id_rsa.pub
测试 SSH 连接:ssh -T git@github.com
① ssh-keygen 是 SSH 密钥生成器程序的名称。-t rsa 是一个选项,指定了要生成的密钥类型为 RSA
② RSA 密钥对包括两个部分:私钥和公钥。私钥通常保存在你的计算机上,而公钥则被传输给其他人或服务器。这些密钥对被用来在网络上进行安全的身份验证和加密通信
③ 运行完会在C:\Users\当前用户\.ssh文件夹中看到id_rsa文件(私钥)和id_rsa.pub文件(公钥)
④ 这个配置的作用是以后操作远程仓库就可以不用一直验证账号
3、使用
3.1、仓库、分支相关
创建本地仓库:
git init
查看本地仓库分支:git branch
创建本地仓库分支:git checkout -b 新分支
切换本地仓库分支:git checkout 分支
重命名本地仓库(别的)分支:git branch -m 旧分支名 新分支名
重命名本地仓库(当前的)分支:git branch -m 新分支名
删除本地仓库分支:git branch -d 分支
本地仓库连接远程仓库(在本地将它叫做origin):git remote add origin 远程仓库连接
查看本地仓库连接了哪些远程仓库:git remote -v
本地仓库解绑远程仓库:git remote remove 远程仓库(使用本地的命名,例如origin)
将其他分支合并入当前分支:git merge 别的分支
放弃合并:git merge --abort
查看远程仓库有什么分支:git remote show
3.2、项目相关
克隆项目:
git clone xxx
提交代码到暂存区:git add 文件
(提交到暂存区时,本地仓库就已经更新了)
提交所有代码到暂存区:git add -A
/git add .
提交:git commit -m "描述"
(对修改进行分类提交,产生相应的镜像)
提交记录:git log
(commit过的才能被看到)
提交记录(详细一点的):git log --stat
恢复工作区的文件:git checkout 工作区修改过的文件
(恢复为当前仓库的数据)
撤回提交(软重置+回滚1次):git reset --soft HEAD^
撤回提交(软重置+回滚1次):git reset --soft HEAD~数字
撤回提交(混合重置+回滚1次):git reset --mixed HEAD^
撤回提交(混合重置+回滚1次):git reset --mixed HEAD~数字
撤回提交(硬重置+回滚1次):git reset --hard HEAD^
撤回提交(硬重置+回滚1次):git reset --hard HEAD~数字
推送到远程仓库(第一次:推送并建立关联):git push -u 远程仓库名字 本地分支
(-u 是将当前分支与远程分支建立关联)
推送到远程仓库(后续):git push
从远程仓库拉取(第一次:拉取并建立关联):git pull 远程仓库名字 本地分支
从远程仓库拉取(后续):git pull
① 只要add了,仓库的数据就改了
② 查看当前仓库的数据:工作区的无色 / 仓库的无色+绿色;查看上次仓库的数据:仓库的无色+红色
③ 暂存区可以关联当前仓库的数据和上次仓库的数据,工作区只能关联当前仓库的数据
④ 软重置不会修改仓库的数据,会保留暂存区、工作区的更改
⑤ 混合重置会将仓库的数据修改成上次的数据(即commit中的无色+红色部分),会保留工作区的更改
⑥ 硬重置会将仓库的数据修改成上次的数据(即commit中的无色+红色部分),不会保留工作区的更改
3.3、其他
查看文件夹状态:
git status
4、开源项目渠道
① 掘金
② GitHub Trending
③ GitHub 521xueweihan / HelloGitHub
④ GitHub ruanyf / weekly
⑤ 阿里妈妈前端快爆
5、github找资源小技巧
① 找百科大全:awesome xxx
② 找例子:xxx sample
③ 空项目架子:xxx starter / xxx boilerplate
④ 找教程:xxx tutorial