#创建版本库
#创建目录
mkdir test
cd test
pwd
#把目录变成git可以管理的仓库
git init
#查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt
git diff 是工作区和暂存区的对比
git diff -- cached 是暂存区和分支的对比
git diff HEAD -- readme.txt 工作区和分支的对比
当前readme文件内容
分支上的内容
暂存去内容
分别执行 git diff
git diff --cached
git diff HEAD -- README.md
说明
git diff 是工作区和暂存区的对比
git diff -- cached 是暂存区和分支的对比
git diff HEAD -- readme.txt 工作区和分支的对比
#git配置
git config --golbal user.name ""
git config --global user.email ""
#检查状态
git staus
#克隆远端代码
git clone https://github.com/tutorialzine/awesome-project.git
如果要克隆到本地自定目录下,则
cd 到你要保存的目录下,然后再 git bash 执行 git clone
#添加文件(暂存)
暂存单个文件:
git add filename
暂存目录下所有内容
git add -A 或者 git add .
#提交文件
git commit -m "说明"
查看当前分支和暂存区区别:(已经没有区别)
当前分支和工作区区别:
#上传(git push命令会有两个参数,远端仓库的名字,以及分支的名字:)
git push origin master
#拉取代码(git pull)
git pull origin master
git 管理的是修改而不是文件,所以每次修改都需要放入暂存区(git add) 后才能被提交(git commit)
git 撤销修改 git checkout -- <file>
如:给readme.md 添加 reset .
查看当前暂存区与工作区的区别
然后撤销对文件的修改
发现文件回退到了最近一次修改(提交的或者添加至暂存区)的内容。
git 保存现场
git stash
查看stash
git stash list
恢复现场
git stash pop 恢复并删除
git stash appy 恢复但不删除
可以用 git statsh drop删除
创建分支
git branch localbranch
切换分支
git checkout localbranch
创建分支并切换到该分支,等效于上面两个命令都执行
git checkout -b localbranch
在本地更改完分支的代码后,add并commit后,需要合并分支到主干的话执行
git checkout master
git merge localbranch //合并分支到当前分支无需合并至主干,直接将本地分支提交到远程仓库的新分支的话执行
git push origin localbranch:remotebranch //将本地分支localbranch提交到远程分支remotebranch,如果远程没有改分支则自动创建
查看本地所有分支以及当前所在分支
git branch //当前分支前有 * 号
删除本地分支
git branch -D localbranch
删除远程分支
git push origin :remotebranch //不加本地分支时进行提交即删除远程分支