git init git status git add 文件名 (对指定文件进行版本控制) git add . (对制定文件夹下所有文件及子目录进行版本控制) git commit -m '提交到版本库并创建第一个版本' git config --global user.email "xxxx@qq.com" git config --global user.name "xxxx" git log(版本号为当前后的) git reflog(版本号为所有的) 从版本库回退如下(已经add及commit过的,使用git log 或 git reflog查看提交日志,若关掉终端则使用后者): git reset --hard 493fca6a9c5eaf4c703e14de3ea0cc3a4d05cac1(回到某个版本状态) git reset --hard HEAD^ 其中HEAD表示当前最新版本,HEAD^表示当前版本的前一个版本,HEAD^^表示当前版本的前前个版本, 也可以使用HEAD~1表示当前版本的前一个版本,HEAD~100表示当前版本的前100版本。 暂存区回滚到工作区:git reset HEAD file 工作区回滚到修改前:git checkout -- file(丢弃工作区的改动) git remote add origin https://github.com/xxxx.git git push -u origin master(master为分支名称) git config --global credential.helper store(设置账号密码自动登录) git stash (将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态) git stash pop(将上面保存到别的地方的部分拿回继续开发) git branch dev (创建分支) git branch -b dev (创建并切换到分支) git branch (查看分支) git checkout dev (切换到dev分支) git merge dev --将dev分支合并到master git branch -d dev --将dev分支删除 git pull origin dev(从github拉取dev分支代码,等价于git fetch origin dev + git merge origin/dev,用rebase代替merge则不会出现分叉,保持提交记录整洁) git rm -r -n --cached "bin/" //-n:加上这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。 git rm -r --cached "bin/" //最终执行命令. git commit -m" remove bin folder all file out of control" //提交 git push origin master //提交到远程服务器 vim .gitignore --忽略不用版本控制的文件,如sql写入.sql,pyc写入.pyc git tag -a v1.0 -m '初次创建第一个版本' git push origin --tags 版本对比: git diff HEAD -- file(对比工作区及HEAD区file版本的不同) git diff HEAD HEAD^ -- file(对比版本HEAD及HEAD^的不同)