*Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。*
下面,请跟着 Mobro 一起了解常用的 git 命令:
git config --global "user.name" # 全局配置用户名 git config --global "user.email" # email git config user.name/user.email # 查看用户名/邮箱 ssh-keygen -t rsa -C "mobro_chu@163.com" # 创建ssh key ## 公钥是要放在 github 上,密钥就不必了 ssh -T git@github.com # 检查连接是否成功 git remote add origin git@server-name:path/repo-name.git # 与远程仓库建立连接 # eg: git remote add origin git@github.com:MobroChu/mine.git
git branch # 查看当前分支 git branch# 创建一个 name 的分支 git branch -m A B # 将原来为A的分支,改名成 B git branch -m C # 将当前分支改名为 C git branch -d E # 删除分支,不是当前正打开的分支 git branch -D F # 删除分支,当前正打开的分支 git branch # 恢复被删除的分支 git push origin :G # 删除远程仓库的G分支 git checkout -b A # 创建A分支,并切换到A分支下 git checkout A # 从当前分支切换到A分支下 git merge A # 将A分支合并到当前分支
git status # 查看当前仓库状态 git log # 查看日志 git reflog # 查看命令记录 git diff# 查看暂存区filename这个文件与仓库中filename文件的不同 git diff HEAD -- # 查看工作区和版本库里面最新版本中filename的区别 git reset HEAD # 撤销缓存区的修改 git reset --hard HEAD/HEAD~100/版本号 #版本回退 ## HEAD 指向的是当前版本 ## HEAD~100 从当前版本向前退100个版本 ## 版本号 不用全部复制,只需要版本号的前几位就好了 git add # 将文件添加到要提交的队列中 git commit -m "xxx" # 提交的到暂存区,并添加注释xxx git commit -am "xxx" ===> git add , git commit -m "xxx" git push -u origin A # 推送到远程仓库 ## -u 一般情况下,第一次才有,方便以后推送或者拉去,可以简化命令 ## origin 远程仓库名,可以换,但很少有人去换 ## A 要推送到A分支下
git stash # 添加储藏 git stash push -m "注释内容" git stash list # 查看储藏 # 使用 num 这个版本号的 stash, 其中 num 为数字 ## pop 会删除 stash 队列中的 num 这个缓存版本,apply 不会。 git stash pop stash@{num} git stash apply stash@{num}
git pull # 拉取远程当前分支的最新代码 # 把所有的remote变化都拉下来,并且将你最新的commit置于最顶上 git pull --rebase