github创建仓库到本地使用前期准备// 注册github账号// 地址:https://github.com/// 配置密匙// 地址:https://jingyan.baidu.com/article/414eccf6a330926b431f0ac6.html// 创建仓库git-test// git/https 切换到git模式(避免每次重复密匙验证)// 确保已经安装git bash,并打开 创建本地仓库// 在本地创建文件夹mkdir git-test// 复制代码,如以下示例,粘贴到git bash运行echo “# git-test” >> README.mdgit initgit add README.mdgit commit -m “first commit"git remote add origin git@github.com:webjimmylau/git-test.gitgit push -u origin master创建分支// 最好统一先在github上创建分支// 然后才在本地git pull分支git命令文件夹clear // 清空代码pwd // 显示当前目录mkdir fileName // 创建文件夹cd fileName // 进入文件夹git init // 把这个目录变成git可以管理的仓库文件echo xxx >> text.txt // 创建文件并更改或直接更改文件内容rm text.txt // 删除文件cat text.txt // 查看文件内容git diff text.txt // 查看文件修改的内容git diff HEAD – text.txt // 查看工作区和版本库里面最新版本的区别git reset HEAD . // 撤销件到暂存区git checkout – text.txt // 撤销修改文件内容 或 撤销删除文件分支git branch // 查看分支 *代表当前分支git branch dev // 创建分支git branch -d dev // 删除分支git branch -D dev // 强行删除分支git checkout dev // 切换分支git checkout -b dev // 创建并切换分支git checkout -b dev origin/dev // 创建并拉取远程分支dev并切换分支git merge dev // 在当前分支上合并dev内容git merge –no-ff -m ‘xxx’ dev // 合并分支,禁用‘Fast forward’模式,删除后还能保留分支信息版本查看git reflog // 查看全部版本(包括回滚后看不到的版本、误操作等)git log // 详细查看分支提交历史(当前版本的祖先版本)git log –pretty=oneline // 简单查看分支提交历史(去除作者和日期)git log –pretty=oneline –abbrev-commit // 查看精简分支提交历史(缩小版本号长度)git log –graph // 查看分支删除信息版本回滚git reset –hard HEAD^ // 回滚到上一个版本git reset –hard HEAD~100 // 回滚到上100个版本git reset –hard scd51f // 回滚到某版本拉取提交git clone git-test(url) // 克隆git-test项目git remote add origin git-test(url) // 关联一个远程库git pull origin master // 拉取成功 然后手动处理冲突git branch –set-upstream master // 解决分支冲突 git push -u origin master // 把本地master分支和远程master分支关联起来 // 并把本地master分支的最新修改推送到github上git push origin master // 把本地master分支的最新修改推送到github上git push origin :dev // 在远程分支上删除dev分支git remote // 查看远程库的信息 如:origingit remote -v // 查看远程库的详细信息 如:origin隐藏现场git stash // 将当前的工作现场隐藏起来git stash list // 查看隐藏的工作现场git stash apply // 恢复工作现场git stash drop // 删除隐藏的一条工作现场记录git stash pop // 恢复并删除提交到本地git status // 查看是否还有文件未提交git add text.txt // 添加文件到暂存区git commit -m ‘xxx’ // 把暂存区的文件提交到仓库git命令使用方法1、创建/修改/提交cd D: // 进入D盘mkdir www // 创建文件夹wwwcd www // 进入文件夹wwwmkdir git-test // 创建文件夹git-testcd git-test // 进入文件夹git-testpwd // 显示当前目录git init // 把这个目录变成git可以管理的仓库echo 111 >> readme.txt // 创建readme.txt文件 并添加内容111git add readme.txt // 添加readme.txt文件到暂存区里面去git commit -m “add file” // 把暂存区的文件提交到仓库git status // 查看是否还有文件未提交echo 222 >> readme.txt // 创建readme.txt文件并更改或直接更改readme.txt文件内容git status // 查看是否还有文件未提交git diff readme.txt // 查看readme.txt修改了什么内容git add readme.txt // 添加readme.txt文件到暂存区里面去git commit -m “change file” // 把暂存区里面的内容提交到仓库2、版本回退echo 333 >> readme.txt git add readme.txt git commit -m “change file"git log // 查看版本历史记录git log –pretty=oneline // 查看精简版本历史记录git reset –hard HEAD^ // 退回到上一个版本 ^上一个 ^^上两个 ~100上100个cat readme.txt // 查看readme.txt内容git log // 查看版本历史记录,被覆盖的最新版本333已经看不到,按q退出查询git reflog // 可以看到333内容的版本信息和对应的版本号git reset –hard xxxxxx // 恢复到333内容的版本cat readme.txt // 查看readme.txt内容3、理解工作区与暂存区的区别echo 444 >> readme.txt // 修改文件echo test >> test.txt // 新增文件git add readme.txt // 添加文件到暂存区git add test.txt // 添加文件到暂存区git commit -m “add files” // 把暂存区的文件提交到仓库4、撤销修改echo 555 >> readme.txt // 修改文件cat readme.txt // 查看文件git checkout – readme.txt // 把文件在工作区做的修改全部撤销git 666 >> readme.txt // 修改文件git add readme.txt // 添加文件到暂存区echo 777 >> readme.txt // 修改文件cat readme.txt // 查看文件git checkout – readme.txt // 把文件暂存区的修改保留,把工作区为修改全部撤销cat readme.txt // 666还有,777不见了5、删除文件echo b >> b.txt // 新建文件git add b.txt // 添加文件到暂存区git commit -m “change file” // 提交暂存区的文件到仓库rm b.txt // 删除文件git status // 查看文件状态git checkout – b.txt // 撤销删除文件6、远程仓库// 如何添加远程库git remote add origin git-test(url)git push -u origin master // 把本地master分支和远程master分支关联起来 // 并把本地master分支的最新修改推送到github上git push origin master // 把本地master分支的最新修改推送到github上// 如何从远程克隆git clone git-test(url)7、创建与合并分支git branch // 查看分支 *代表当前分支git branch dev // 创建分支git checkout dev // 切换分支git checkout -b dev // 创建并切换分支cat readme.txtecho 777 >> readme.txtcat readme.txtgit add readme.txtgit commit -m ‘xxx’git checkout mastercat readme.txt // 只有之前的内容666git merge dev // 在当前分支上合并dev内容cat readme.txt // master上多了内容777git branch -d dev // 删除dev分支// 如何解决冲突git merge fenzhi1 // 删除冲突,再提交// 分支管理策略 git merge –no-ff -m ’text’ dev // 合并分支,禁用‘Fast forward’模式,删除后还能保留分支信息git branch -d dev git log –graph –pretty=oneline –abbrev-commit // 查询被删除的分支信息8、bug分支git status // 有看到新增和修改的文件git stash // 将当前的工作现场隐藏起来git status // 隐藏之后,查看状态,是干净的git checkout -b issue-404 // 创建和切换分支到issue-404git add readme.txt // 把文件添加到暂存区git commit -m ‘fix some bug’ // 把暂存区的文件提交到仓库git checkout master // 切换分支到mastergit merge –no-ff -m ‘merge issue-404’ issue-404 // 合并issue-404分支cat readme.txt // 当前master分支可以看到issue-404分支的内容,完全一致git branch -d issue-404 // 在master分支上删除issue-404临时分支git checkout dev // 切换到dev分支git status // 查看状态,还是干净的git stash list // 查看隐藏的工作现场git stash apply // 恢复工作现场git stash drop // 删除隐藏的一条工作现场记录git stash pop // 恢复并删除9、多人协作git clone git-test(url) // 克隆git-test项目git pull origin master // 拉取master分支git push origin master // 推送master分支git pull origin dev // 拉取失败git branch –set-upstream dev // 解决分支冲突git pull origin dev // 拉取成功 然后手动处理冲突git push origin dev // 推送dev分支