前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。
1. D:\ChengXu\git\Git中双击Git Bash启动git窗口。
![](https://i-blog.csdnimg.cn/blog_migrate/3d7857fd625fa1bb17c49308b11b12d3.png)
2. 这条不能放到博客,是我的账号密码。
3. 添加: git add readme.txt,实际上就是把文件添加到暂存区。
4. 提交:git commit -m'第一次提交'引号中是说明,把暂存区所有内容提交到当前分支上。
5. 查看当前git仓库状态:git status
6. 查看当前目录:pwd
7. 查看当前文件有什么修改:git diff readme.txt
8. 查看历次修改:git log ,显示为一行:git log --pretty=oneline
9. 版本回退到上一个版本:git reset --hard HEAD^
10. 回退到上上个版本只需把HEAD^改成HEAD^^ 以此类推
11. 回退到前100个版本的话,简便命令操作:git reset --hard HEAD~100
12. 查看文件内容:cat readme.txt
13. 获取到每次提交对应版本号:git reflog
14. git reset --hard 版本号 可以回退到对应版本。如:git reset --hard 0ed2cf5
15. 修改后未提交前,发现内容有误,要恢复以前版本,有如下几种方法:
第一:知道要删掉的内容,直接手动更改去掉多余文件,add添加,commit提交。
第二:恢复到上一个版本:使用 git reset --hard HEAD^。
第三:git checkout -- file 丢弃工作区的修改。
丢弃工作区的修改的两种情况:
A.自动修改后,还没有放到暂存区,使用撤销,修改就回到和版本库一模一样的状态。
B.已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。
注意:命令git checkout -- readme.txt中的-- 很重要,如果没有--的话,那么命令变成创建分支了。
16. 删除: 1)直接在仓库目录中把文件删除。
2)使用rm命令:rm b.txt,彻底从版本库中删除,要commit提交。
删除后,未提交前恢复命令:git checkout -- b.txt。
17. id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
18. 可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。
在本地的testgit仓库下运行命令:
19. 本地库内容推送到远程:git push,把当前分支master推送到远程。
由于远程库是空的,第一次推送master分支时,加上–u参数:
git push -u origin master。
1)Git会把本地的master分支内容推送到远程新的master分支,
并把本地的master分支和远程的master分支关联起来。
2)在以后的推送或者拉取时就可以简化命令为git push。
推送成功后,可以立刻在github页面中看到远程库的内容已和本地一模一样。
3)push 前要保证所有操作已提交,删除文件后需要git add -A
4)git add 的几种参数区别:
git add -A 保存所有的修改
git add . 保存新的添加和修改,但是不包括删除
git add -u 保存修改和删除,但是不包括新建文件。
20. 本地和远程仓库代码合并:git pull --rebase origin master,push失败时考虑使用。
21. 切换分支到主分支master:git checkout master。
22. 本地master分支推送到github上:git push origin master,只要本地有提交就可推送。
24. HEAD不是指向提交,而是指向master,master才是指向提交,HEAD指向的是当前分支。
25. 创建分支:git checkout -b dev,分支名字为dev。
git checkout 命令加上–b参数表示创建并切换,相当于如下2条命令
git branch dev
git checkout dev
26. 查看分支:git branch,会列出所有的分支,当前分支前面会添加一个星号在最前面。
27. 把dev分支上的内容合并到主分支master上,在主分支master上执行:git merge dev。
28. 删除分支:git branch -d dev,dev是分支名字。
分支相关总结:
查看分支:git branch
创建分支:git branch name
切换分支:git checkout name
创建+切换分支:git checkout–b name
合并某分支到当前分支:git merge name
删除分支:git branch–d name
29. 合并失败,出现冲突,
红色框中是命令,紫色框中是报错提示冲突:
![](https://i-blog.csdnimg.cn/blog_migrate/06cce28c0beb805e6fdc0724adf98aa7.png)
30. 退回merge前:git reset --merge。
31. 查看远程仓库信息:git remote,查看详细信息:git remote–v
32. 推送(push):本地仓库的代码推送至服务器
提交(commit):修改保存到本地仓库
git add . ->将修改添加至本地缓存
git commit -m 'msg' ->将本地缓存保存到本地仓库中
git push ->将本地仓库推送至服务器
git pull ->将服务器的代码更新到本地仓库中
33. fetch:抓取,pull:获取,merge:合并,push:推送。
fetch:从远程获取最新版本到本地,不会自动merge。
pull:从远程获取最新版本并merge到本地。
pull = fetch + merge。