git init : 初始化一个git仓库
git checkout --file :把file在工作区的修改全部撤销(如果没有--就变成了切换到另一个分支);就是用暂存区的文件替换工作区文件
git checkout . # : 清除本地所有未提交的修改
git checkout dev : 切换到分支dev
git checkout -b hanjing : 从本地现有分支切出一个新分支hanjing
git add "file" : 把file添加到暂存区
git commit -a -m "file" : 把暂存区文件file提交到分支
git status : 查看仓库状态
git pull origin dev : 拉去dev分支上的不同代码
git push origin dev : 把本地代码上传到dev分支
git diff 文件名 : 查看工作区与版本库中最新版本的区别
git log : 查看最近三次commit过的提交
git log --pretty=oneline : 查看最近一次commit过的历史记录
git reset --hard HEAD^ : 把当前版本回退到上一个commit版本(上上一个版本^^,以此类推;往上100个版本可以写成:HEAD~100)
git reset --hard commitid : 指定回到这个commitid值的版本(commitid版本不用写全,前几位就可以)
git reset HEAD file :把已经add还没commit的文件去掉
git reflog : 查看命令历史
git clone : 克隆一个远程仓库到本地
pwd : 显示当前目录
ls -ah : 查看隐藏的跟踪管理版本库.git
git rm file : 删除file
git remote add origin git@server-name:path/repo-name.git : 关联到远程库
git rm raindow -r -f : 删除raindow文件夹及其中所有文件
创建分支:git branch <分支名>
切换分支:git checkout <分支名>
该语句和上一个语句可以和起来用一个语句表示:git checkout -b <分支名>
3、分支合并
比如,如果要将开发中的分支(develop),合并到稳定分支(master),
首先切换的master分支:git checkout master。
然后执行合并操作:git merge develop。
如果有冲突,会提示你,调用git status查看冲突文件。
解决冲突,然后调用git add或git rm将解决后的文件暂存。
所有冲突解决后,git commit 提交更改。
4、分支衍合
分支衍合和分支合并的差别在于,分支衍合不会保留合并的日志,不留痕迹,而 分支合并则会保留合并的日志。
要将开发中的分支(develop),衍合到稳定分支(master)。
首先切换的master分支:git checkout master。
然后执行衍和操作:git rebase develop。
如果有冲突,会提示你,调用git status查看冲突文件。
解决冲突,然后调用git add或git rm将解决后的文件暂存。
所有冲突解决后,git rebase --continue 提交更改。
5、删除分支
执行git branch -d <分支名>
如果该分支没有合并到主分支会报错,可以用以下命令强制删除git branch -D <分支名>