git常用命令
创建版本库
$ mkdir learngit //创建项目
$ cd learngit //使用项目
$ git init //初始化,生成.git文件(若该文件隐藏,则使用ls -ah)
设置用户信息
git config --global user.email “your-email@example.com”
git config --local user.name “Your Full Name”
提交代码
$ git add test.txt //将代码添加到本地仓库缓存
$ git commit -m “wrote a test file” //将代码提交到本地仓库
-m 添加注释
版本控制
$ git status //查看工作区中文件当前状态
$ git log //查看提交历史记录,从最近到最远,可以看到3次
$ git log --pretty=oneline //加参,简洁查看
$ git reflog //查看每一次修改历史
$ git reset --hard HEAD^(HEAD~100)(commit id) //回退版本
$ git checkout – test.txt //丢弃工作区的修改,即撤销修改
$ git reset HEAD test.txt //丢弃暂存区的修改(若已提交,则回退)
远程仓库
$ git push -u origin master //将本地内容推送到远程仓库(第一次)
$ git push origin master //将本地内容推送到远程仓库(之后)
$ git remote rm origin //删除远程仓库(解绑)
$ git clone git@github.com: Daisy/AKgit.git //克隆远程仓库
//克隆之后使用和查看
$ git remote //查看远程库的信息
$ git remote -v //查看远程库的详细信息
$ git remote set-url origin git@github.com: Daisy/AKgit.git // 指定本地与远程分支的链接
多人协作
$ git fetch origin //更新远程分支信息
$ git checkout dev //切换分支
$ git checkout -b dev //创建并切换到分支dev
$ git branch //列出所有本地的分支
$ git branch dev //创建分支
$ git branch --merged:列出所有已经合并到当前分支的分支。
$ git branch --no-merged:列出所有尚未合并到当前分支的分支。
$ git branch -a:列出所有本地和远程的分支。
$ git branch -r:只列出所有远程跟踪分支。
$ git branch -d :删除一个分支。如果分支有未合并的更改,这个命令会失败。如果你确定要删除分支,即使有未合并的更改,可以使用 -D 参数强制删除。
$ git branch --track :创建一个新分支并设置跟踪远程分支(通常是 origin 仓库的同名分支)。
$ git branch -m :重命名当前分支。
$ git branch -M :强制重命名当前分支,即使新分支名称已经存在。
$ git merge dev (–no-ff)(-m)//合并,把dev分支的工作成果合并到master分支上