git 概念:Remote 远程仓库, Repository 本地仓库, workspace 工作空间
<!--git 撤销与回滚-->
<!-- 将本地代码库文件上传到远程代码库 -->
git stash save "edit 10.29" // 将本地的最新文件暂存在本地,同时将本地代码版本返回上次拉取的代码版本。
git pull // 将远程主机的最新内容拉下来后直接合并
git stash pop // 将暂存在本地的最新修改文件,与拉取的新版本,进行代码合并。
git add . // 上传新增修改文件
git commit -m "备注" // 上传本地版本,并做备注
git push // 本地文件与远程文件进行合并
<!-- 未使用git add .缓存代码时 (撤销)-->
git checkout --文件名 // 如 git checkout --readme.md 不要忘记的中间的--
git checkout . //放弃所有文件的修改
<!-- 已经git add .缓存的代码(撤销) -->
git log 查看暂存的文件名ID
git reset 文件名 //如 git reset readme.md 放弃指定文件的缓存
git reset HEAD . //放弃所有缓存
<!-- 已经commit提交了的代码-->
git reset --hard HEAD^ //--hard – 强制将缓存区和工作目录都返回上一步的提交
git reset --hard commitID //--hard 强制将缓存区和工作目录都同步到你指定的提交,commitId 可以用git log 查看
其中这几个参数:
--mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
--soft
不删除工作空间改动代码,撤销commit,不撤销git add .
--hard
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
git 命令行拉取分支代码
以拉取dev分支的代码为例, 要拉取其余分支代码类似
使用git命令拉取
命令:git clone -b dev XXX
其中dev就是分支的名称操作
<!-- 如果提交远程仓库时地址填错了,如何撤回本地仓库暂存的文件 -->
git remote -v 查看 仓库地址。
git remote rm origin 删除地址。
git remote add origin https://gitee.com/demo.git 关联到远程仓库
git push -u orgin master 将本地库的暂存文件提交到远程仓库
<!-- 强制远程服务器最新版本覆盖本地版本 -->
git fetch origin master --all // 是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中<远程主机名>
git reset --hard origin/master // 就是回退到该版本号上。 有了参数--hard,直接把工作区的内容也修改了
git pull
<!--将暂存区的commit 文件去除-->
当我们需要删除暂存区
或分支
上的文件, 同时工作区也不需要这个文件了, 可以使用
1 git rm file_path 2 git commit -m 'delete somefile' 3 git push
当我们需要删除暂存区
或分支
上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用
git rm --cached file_path git commit -m 'delete remote somefile' git push