git和github的用法汇总
1、git的安装:(我是windows)
查看git版本号(未安装则不会出现版本号,去官网下载对应版本的git即可)
git --version
在桌面空白处右键,会出现git gui here和git bash here
2、github上头像不显示的问题及解决:
修改hosts文件:C:\Windows\System32\drivers\etc\hosts
(20210119有效/包括MAC系统,20210123更新)
# GitHub Start
140.82.113.3 github.com
140.82.114.20 gist.github.com
151.101.184.133 assets-cdn.github.com
151.101.184.133 raw.githubusercontent.com
199.232.28.133 raw.githubusercontent.com
151.101.184.133 gist.githubusercontent.com
151.101.184.133 cloud.githubusercontent.com
151.101.184.133 camo.githubusercontent.com
199.232.96.133 avatars.githubusercontent.com
151.101.184.133 avatars0.githubusercontent.com
199.232.68.133 avatars0.githubusercontent.com
199.232.28.133 avatars0.githubusercontent.com
199.232.28.133 avatars1.githubusercontent.com
151.101.184.133 avatars1.githubusercontent.com
151.101.108.133 avatars1.githubusercontent.com
151.101.184.133 avatars2.githubusercontent.com
199.232.28.133 avatars2.githubusercontent.com
151.101.184.133 avatars3.githubusercontent.com
199.232.68.133 avatars3.githubusercontent.com
151.101.184.133 avatars4.githubusercontent.com
199.232.68.133 avatars4.githubusercontent.com
151.101.184.133 avatars5.githubusercontent.com
199.232.68.133 avatars5.githubusercontent.com
151.101.184.133 avatars6.githubusercontent.com
199.232.68.133 avatars6.githubusercontent.com
151.101.184.133 avatars7.githubusercontent.com
199.232.68.133 avatars7.githubusercontent.com
151.101.184.133 avatars8.githubusercontent.com
199.232.68.133 avatars8.githubusercontent.com
199.232.96.133 avatars9.githubusercontent.com
# GitHub End
然后保存文件就OK了,至于无法保存,没有修改权限,鼠标右键-属性-安全-修改权限;或将hosts文件复制一份,修改之后,复制到原文件夹替换!
原网址:https://blog.csdn.net/qq_38232598/article/details/91346392
设置SSH Key
在注册好github账号后,打开你的电脑桌面上的一个文件夹,这就建立了一个本地工作库,在里面点击鼠标右键,找到你的git bash here-点击开,如图所示:进行下面操作:
- 输入cd ~/.ssh——回车(看你是否有了ssh key 密钥,有了就备份);
- 输入ssh-keygen -t rsa -C "your email"——直接回车,之后会让你输入github的账号密码,会出现如图所示结果,跟着上面所指示的路径,在你的电脑中找到该文件,id_rsa文件即是你的私钥,id_rsa.pub是公钥
- 打开你的id_rsa.pub文件,复制下里面的内容,然后登录进去你的github;
- 在右上角账户那里点击头像边上的下拉,出现如图——点击settings进去,找到左侧的SSH Keys
- 再点击Add SSH Key,在title处填入任意的标识,在Key部分里面添加刚才复制的id_rsa.pub文件里的内容,点击添加即可;
- 最后一步了,只需测试一下链接是否正常了,接着输入:ssh -T git@github.com,这时会问是否继续连接,我们输入 yes,这样,我们的git配置就完成了。
- 注意这一步没有做的话,在推送项目的时候会报错:git@github.com出现Permission denied (publickey)
3、创建仓库,上传代码到github
如果出现报错:
error: failed to push some refs to 'https://github.com/chenyingying1016/learn-git.git'
有以下三种解决方案:
1: 进行push前先将远程仓库pull到本地仓库
$ git pull origin master #git pull --rebase origin master
$ git push -u origin master
2: 强制push本地仓库到远程 (这种情况不会进行merge, 强制push后远程文件可能会丢失 不建议使用此方法)
$ git push -u origin master -f
3: 避开解决冲突, 将本地文件暂时提交到远程新建的分支中
$ git branch [name]
# 创建完branch后, 再进行push
$ git push -u origin [name]
我使用的是最简单粗暴的方法,直接加入参数-f
补充:今天推送时出现一个新的报错
sourcetree推送失败,提示: Logon failed, use ctrl+c to cancel basic credential prompt.
sourcetree推送时,在弹出框中输入github用户名和密码,但是还是一直推送失败。
原因:新版的GIT不再支持弹出框验证用户名密码的方式,所以推送请求被拒绝了。
解决办法:到 https://gitforwindows.org/ 下载最新版本的git, 安装好后重新推送, 就会引导你到浏览器中输入用户名密码,之后推送成功。
But !!!
下载时居然提示要1个小时+ !!!还是别用官网下了吧!!!
国内的阿里镜像她不香吗???
1、下载地址:http://npm.taobao.org/mirrors/git-for-windows/
2、下滑,选择最新版,选择自己电脑需要的对应版本
3、无脑下一步安装即可
4、之后继续推送,出来的提示框跟之前不一样,选择在浏览器打开
然后点击授权
这时候就会显示推送进度,很快就推送成功啦!
4、常见操作
git status 查看状态
git log 查看操作日志
git log --author=’chenyingying1016’ 查看指定用户的操作日志
配置用户名和邮箱
git config --global user.name chenyingying1016
git config --global user.email chenyingying1016@163.com
git config --global --list
修改项目中的文件
git status 查看修改的文件
添加至暂存区
git add demo.html (提交指定文件) / git add . (提交所有文件)
git commit -m 修改文件 (提交入库)
git log (查看提交日志)
删除文件
【手动删除文件】
1、手动删除文件
2、git add . (添加未被删除的文件至暂存区)
3、git commit -m 手动删除文件
【命令行删除】
1、git rm demo3.html
2、git add . (添加未被删除的文件至暂存区)
3、git commit -m 命令行删除文件
文件重命名
【手动重命名文件】
1、手动重命名文件 (demo.html->new.html)
2、git add new.html
git rm dmeo.html
3、git commit -m 手动重命名文件
【命令行重命名】
1、git mv new.html demo.html
2、git commit -m 命令行重命名文件
移动文件
新建文件夹 home
git mv demo.html home
git commit -m 移动文件
移动文件并重命名
git mv home/demo.html new/new.html
git commit -m 移动并重命名文件
5、常见问题及解决方法
(1)查看文件前后变化
git log --pretty=oneline new/new.html 会返回id
git show 0f778db557901cca1a86753c176ba300950bf308 查看具体操作
以上两句可以简写为以下这一句
git log -p new/new.html
(2)操作失误时如何一键还原
git diff 查看单文件的变化
git status 查看文件的修改情况
git checkout -- home/demo.html 回到上一次编辑前的状态
(3)不再追踪时如何撤销追踪操作
当修改文件之后,使用git add提交到暂存区,则git会进行文件追踪
这时想要撤回,必须先取消追踪
git reset HEAD home/demo.html
git checkout -- home/demo.html
(4)回到上一版本或者指定版本
git reset --hard HEAD^ 回到上一版本
git reset --hard HEAD^^ 回退两个版本
git reset --hard(id前7位或者多于7位) 回退到指定版本
(5)某个文件回到指定版本
git checkout cdabd1f6a19f41fcb27d40c794ed38592432391b -- version.html
(6)修改内容后推送至远程仓库
git push origin master
(7)版本标签管理
git tag v2.0
标签会加到最近一次提交的commit版本上
git tag v1.0 id号
给指定版本添加标签
git tag
查看所有标签
git tag -d v2.0
删除标签
git push origin v1.0
推送标签到线上版本
(8)分支操作
git branch dev 创建分支
git branch 查看分支(*代表当前所在分支)
git checkout dev 切换分支
git branch -d dev 删除分支(不能删除当前分支,需要先切换掉)
git checkout -b dev2 创建分支并切换
如果当前分支有commit操作,也不可删除分支,除非用以下代码强制删除
git branch -D dev 强制删除分支
合并分支操作
1、git checkout -b dev 创建分支并切换至该分支
2、修改代码 add commit
3、git checkout master 切换至主分支
4、git merge dev 合并到主分支
合并分支存在冲突时
1、git merge --abort
合并冲突时以主分支为主,忽略其他分支
2、先删除提示文本,然后手动修改
git add .
git commit
输入i进入编辑,添加备注文字;按esc + :wq退出编辑
git commit -m 备注
6、多人分支集成协作
(1)查看版本路线
git log 查看所有提交记录
q 提前退出查看
git log --oneline 简写方式查看所有提交记录
git log --oneline --graph 查看版本路线
(2)删除不需要的分支
可以在github里手动创建分支
切换到目标分支
git fetch 拉取所有远程仓库
git branch -av 查看分支
git push origin --delete dev 确定其他分支代码已经合并到当前目标分支之后,可删除其他分支
(3)不同的人修改了不同的文件
git fetch 拉取远程仓库
本地做修改 add commit
git push 如果有不同的人做了不同的修改,此时会报错
git branch -av 查看远端的仓库被哪个分支修改了,复制该分支
git merge origin/master后面跟的是分支名
git push
(4)不同的人修改了相同的文件
接下来是模拟
首先github切换到指定分支,如test
git clone https://github.com/chenyingying1016/learn-git.git test3 克隆一个项目到本地
打开项目,配置邮箱和用户名
git config --add --local user.name ‘cyy’
git config --add --local user.email ‘cyy@qq.com’
git config --local --list 查看配置
git branch -av 查看本地分支与远程分支的关系
git checkout -b test remotes/origin/test 把本地分支与远端分支做关联
修改 add commit ...
git push
打开另一个本地拷贝项目,模拟第二个用户
git fetch
git branch -av 查看本地分支与远程分支的关系
git checkout -b test remotes/origin/test 把本地分支与远端分支做关联
修改 add commit ...
git push
7、github拓展
Octotree 像编辑器一样展示github上的项目文件
Enhanced github 查看单个文件的大小,点击可直接下载单文件
Gitzip for github 文件夹空白区域双击,即可下载某个文件夹
可用的插件下载地址:
https://crxdl.com/
http://chromecj.com/
http://www.cnplugins.com/