🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 一、本地仓库命令 git的逻辑区域图: ![](https://img.kancloud.cn/a5/db/a5db50deab25c26f90d361db4daec83c_640x432.png) 1、初始化本地仓库 ``` git init ``` 初始化一个新本地仓库,它在当前目录下生成一个名为.git的隐藏文件夹(当前目录变成工作目录); 2、将文件从工作目录提交到暂存区 ``` #全部 git add . #指定目录下 cd src git add ./* git stash -u -k 忽略其他文件,把现修改的隐藏起来,这样提交的时候就不会提交未被add的文件 git stash pop 恢复之前忽略的文件(避免后面导致需要提交的时候仍然被忽略掉了) ``` 他会监控工作目录的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。 3、提交暂存区改动到本地仓库:git commit ``` git commit -m "comment" ``` git commit 主要是将暂存区里的改动给提交到本地的版本库。每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id,它在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里; 4、清空暂存区 ``` rm .git/index ``` 暂存区实质是.git目录下的index文件,只要将此文件删除,那么就可以认为暂存区被清空; ``` git rm --cached "文件路径" git rm -r --cached . ``` 将指定文件/所有文件从缓存中删除; 5、查看当前的状态 ``` git status ``` 可以用来查看当前代码有没有被放到仓储中去; ## 二、远程仓库指令 1、将本地仓库与远端仓库建立一个链接:git remote add ``` git remote add origin git@github.com:4170804/tempproject.git ``` 关联到git@github.com:4170804/tempproject.git这个远程仓库,并将远程仓库命名为origin; >[danger] 同一个账号远程仓库名唯一,不能重复,后续命令对该远程仓库的操作就可以用该远程仓库名代替了; 2、查看远程仓库名,在该工程的目录下执行: ``` git remote -v ``` ![](https://img.kancloud.cn/e3/d1/e3d1b74df7fe8173ee382bb3b652ecc1_648x112.png) 这里`adv`就是远程仓库名; 3、从远程获取最新版本并merge到本地; ``` git pull(相当于git fetch 和 git merge之和) ``` 4、将本地版本库的分支推送到远程服务器上对应的分支:git push ``` git push <远程仓库名> <本地分支名> <远程分支名> ```  如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建; 如:`git push origin master`, 如果当前分支只有一个远程分支,那么远程仓库名都可以省略:`git push` ## 三、用户相关指令 显示当前用户: ``` git config user.name git config user.email ``` 切换本地当前使用的GitHub账户: ``` git config --global user.name "4170804" git config --global user.email "4170804@qq.com" ```