首页 > 技术文章 > GIT 使用

w0x68y 2020-06-16 10:43 原文

Git

连接托管服务器

ssh-keygen -t rsa -C "XXX@gmail.com"生成公私钥
添加公钥至github
测试连接 ssh -T git@github.com

  • https需要密码,ssh不需要

项目

新建repository
进入我们的项目 git init初始化git项目
git remote add origin <你的git地址>
Git add +你添加过的文件
git commit -m "本次修改的说明"
add把文件放到了缓存区,然后commit正式提交到仓库。
Git push 推送到服务器
Git log 查看历史更改

版本回退

Git中使用HEAD表示当前版本,也就是commit 88d885c21216cbedacb1692e08d51afa6d4e32a7,

HEAD表示上一个版本,HEAD表示上上一个版本,当然往上100个版本写100个比较容易数不过来,所以写成HEAD~100。

现在,我们要把当前版本回退到上一个版本,就可以使用git reset命令两种方式:
git reset --hard HEAD^
git reset --hard 版本号(可以不写全)
git reset HEAD~(num) --hard
git reset HEAD^^^ --hard
git reset xxxxxx --hard

远程版本回退

直接强制回退 注意master要修改为当前分支版本
git push origin master -f

可能的错误

把本地库的所有内容推送到远程仓库(也就是Github)上 git push -u origin master(由于新建的远程仓库是空的,所以要加-u这个参数,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候只需下面这样就可以了:git push origin master

如果创建远程仓库的时候创建了README文件,那么在push的时候会报错:
failed to push some refs to xxx
解决方法:git pull –rebase origin master(合并),之后再push就好啦。

分支

创建分支
git branch (branchname)
切换到分支
git checkout (branchname)
分支合并
git merge
删除分支
git branch -d

操作

rebase分支
git rebase master(需要rebase的分支)
遇到不是自己的更改的可以直接 skip
git rebase --skip
遇到自己更改的有冲突的改完后 continue
git rebase --continue
最后 push 不上去可以用 -f 参数
git push -f

引用

分支管理
git rebase 与 merge
Git 之 版本回退
git执行rebase操作

推荐阅读