安装略
设置使用者信息:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
创建仓库:git init
添加文件:git add --all
或者git add *
提交代码:git commit -m "message"
仓库当前的状态:git status
查看远程仓库:git remote -v
移除远程仓库:git remote rm origin
添加远程仓库:git remote add origin git@github.com:michaelliao/learngit.git
第一次推送代码:git push -u origin master
之后:git push origin master
克隆远程仓库:git clone git@github.com:michaelliao/gitskills.git
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
查看分支与本地分支差异:git diff temp
删除分支:git branch -d <name>
查看远程分支:git remote show origin
or git branch -a
克隆指定分支:git clone -b <指定分支名> <远程仓库地址>
PS:git clone默认会把远程仓库整个给clone下来,但只会在本地默认创建一个master分支,如果远程还有其他的分支,此时用git branch -a查看所有分支。
Git版本回退
git log 或者 git log --pretty=oneline
查看版本提交信息,q
退出
git reset --hard "HEAD^"
回退到上个版本
git reset --hard "HEAD^^"
回退到上上个版本
git reset --hard xxx
回退到指定id版本,例子:git reset --hard 1094a
git push origin dev_branch -f
远程回滚,旧版本覆盖新版本
git临时保存和回复修改
git stash
orgit stash save
能够将所有未提交的修改(工作区和暂存区)保存至堆栈中,用于后续恢复当前工作目录。
git stash list
查看当前stash中的内容
git stash pop
将当前stash中的内容弹出,并应用到当前分支对应的工作目录上。
stash命令可用于临时保存和回复修改,可跨分支。
注:在未add之前才能执行stash!!!!
git stash [save message]
保存,save为可选项,message为本次保存的注释
git stash list
所有保存的记录列表
git stash pop stash@{num}
恢复,num是可选项,通过git stash list可查看具体值。只能恢复一次
git stash apply stash@{num}
恢复,num是可选项,通过git stash list可查看具体值。可回复多次
git stash drop stash@{num}
删除某个保存,num是可选项,通过git stash list可查看具体值
git stash clear
删除所有保存
参考:https://www.cnblogs.com/fxwoniu/p/13823337.html
Git拉取远程最新代码,并与当前分支合并
- 查看远程仓库:
git remote -v
- 比如 在步骤一中,我们查看到远程有一个叫origin的仓库,我们可以使用如下命令从origin远程仓库获取最新版本的代码
git fetch origin master:temp
上面代码的意思是:从远程的origin仓库的master分支下载到本地master并新建一个temp分支
注意:不建议使用pull拉取最新代码,因为pull拉取下来后会自动和本地分支合并获取最新版本
有两种 拉取 和 获取: pull 和 fetch
从远程拉取最新版本到本地自动合并git pull origin master
git fetch 从远程获取最新版本到本地 不会自动合并git fetch origin master
实际使用中 使用git fetch 更安全 在merge之前可以看清楚 更新情况 再决定是否合并。 - 查看temp分支与本地原有分支的不同:
git diff temp
- 将temp分支和本地的master分支合并
git merge temp
现在,本地代码已经和远程仓库处于同一个版本了,于是可以开心coding了。最后再提一下,上面的步骤中我们创建了temp分支,如果想要删除temp分支,也是可以的,命令如下:git branch -d temp
添加私钥
第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa
和id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh
目录,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub
文件的内容:
点“Add Key”,你就应该看到已经添加的Key:
github-addkey-2
网友评论