0.前言--Github账号创建和秘钥生成
1.在github上创建(sign up)账号,https://github.com/join。填写邮箱,账号,验证.....
2.下载git安装。https://gitforwindows.org/
3.任何界面鼠标右键,选择git bash here。
4.配置全局账号和密码
git config --global user.name "name"
git config --global user.email "xxx@qq.com"
5.生成秘钥ssh-keygen -t rsa -C "你的公司或个人邮箱"
ssh-keygen -t rsa -C "xxx@qq.com"
执行命令,会弹出设置秘钥等,不想设置,直接enter,我是直接enter,3连刷。。。
6.查看生成秘钥位置
cd ~/.ssh/ //切换到本电脑的.ssh文件夹
pwd //当前目录
7.去上述目录下可以看到。
8.打开公钥,复制粘贴到Github网站上的ssh_key上。
9.后续执行git clone github上的项目的sshkey地址,根据提示输入密码等,就可以下载项目。
-------------------------------------------------------可爱的分界线-----------------------------------------------------------------
1.创建仓库
1.1 创建仓库
1.2 创建仓库后,点击clone,复制git地址
2.本地代码上传到github
2.1 在本地的项目工程目录下,安装shift,鼠标右键,git bash here,然后依次执行命令:
1.git init //工作空间创建.git文件夹(默认隐藏了该文件夹)
2.git add . //添加到暂存区
3.git commit -m "注释"
4.git remote add origin http://xxxxxxxxx.git //本地仓库和远程github关联
5.git pull --rebase origin main //远程有readme.md,拉一下
6.git push -u origin main //代码合并
2.2 在2020年10月1起,github默认主分支从master更名为main,以上提交方式会默认创建一个master分支,为保持一致性,可将本地git init的时候默认分支修改为main,执行:
git --version 查看版本
git config --global init.defaultBranch main git在2.28.0上,重新设置git默认分支为main
2.3 如果=一不小心,创建了mster分支,强迫症,可以执行下面命令删除分支。
删除本地分支:git branch -d 分支名称
强制删除本地分支:git branch -D 分支名称
删除远程分支:git push origin --delete 分支名称
----------------------------------------------------------分 隔 线--------------------------------------------------
附:
1.拉代码时候出现:
No tracked branch configured for branch new_protocal or the branch doesn't exist.
To make your branch track a remote branch call, for example, git branch --set-upstream-to=origin/new_protocal new_protocal
执行:
git branch --set-upstream-to=origin/main main
2.电脑使用vpn时,用 git 提交代码至Github,结果报错,报错:
OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
可在项目根目录执行:
git config --global --unset http.proxy
3.上述步骤首次提交代码到仓库,本地和远程关联上了,后续,修改了文件如何上传了?
git status //查看有哪些文件修改
git add 文件名 //哪些文件要提交
git add. //传了删除的全部添加到暂存区
git add -A //所有修改、增加、删除都添加到暂存区
git commit -m "注释" //提交
git push //推送
如果把所有的修改直接提交,可以简略:
git commit -a -m "注释" //提交所有修改
git push
4.额外几个git常用场景
git merge 分支名B。---当前在A,将B分支合并到A;
cheey-pick “摘樱桃” 在A分支,可以选择B分支上某几次提交,然后cheey-pick将它们合并到B;
一直在main改,现在想发版一个比较早的版本,从git历史看想发布版本的哈希值:
git checkout -b 分支名 哈希值。打包这个分支打包发版就好。