git配置
git config --global user.name 英文名git config --global user.email 邮箱git config --global push.default simplegit config --global core.quotepath falsegit config --global core.editor "code --wait"git config --global core.autocrlf input
(查看以上配置 git config --global --list)
本地仓库
提交文件
- git init (产生.git目录)
- git add 路径 (处理文件的变化,添加到待提交区,git add . 提交当前目录)
- git commit -m 描述 (提交到本地仓库)/git commit -v (打开vscode提交)
切换版本
- git log (查看拷贝版本)
- git reset --hard 版本号(一般是前4/6/7 位)
- git reflog (查看版本及切换版本过程)
分支
- git branch x (基于当前最新的commit创建一个新的时间线)
- git checkout x (选择分支)
- git branch (查看所有分支,带有*即为当前分支)
- git merge x (到达想保留的分支如master 分支合并)
- git status -sb (查看合并冲突,解决:保留需要的代码,其余删除)
- git branch -d x (删除分支)
tips
- git add是处理文件的变化,如删除文件以后,依旧要使用git add来添加到待提交区
- git commit -v 可以通过+-回顾修改了哪些代码,将提交理由写的更加细致
- git reset --hard 版本号 之前一定要确保已经进行了提交,不能处于待提交状态
- .gitignore 里是不要提交的文件,如node_modules .DS_Store .idea .vscode
远程仓库(github)
使用SSH key进行身份验证(使用https地址每次都需要输入用户名和密码)
- ssh-keygen -t rsa -b 4096 -C 你的邮箱
- cat ~/.ssh/id_rsa.pub (得到公钥内容,之后在github上新建SSH key 将公钥粘贴)
- ssh -T git@github.com
- git remote add origin git@xxxxxxx (在本地添加远程仓库地址,origin是远程仓库的默认名字不建议换)
- git push -u origin master (如果远程仓库的代码修改了,要先git pull)
克隆代码(只能使用https地址)
-
git clone git@?/x.git (在当前目录下创建一个x目录)
-
git clone git@?/x.git y (在当前目录下创建一个y目录)
-
git clone git@?/xxx.git . (不会新建目录,最好是在空目录下这样做)
配置缩写快捷方式
touch ~/.bashrcecho 'alias ga="git add"'>> ~/.bashrcecho 'alias gc="git commit -v"'>> ~/.bashrcecho 'alias gl="git pull"'>> ~/.bashrcecho 'alias gp="git push"'>> ~/.bashrcecho 'alias gco="git checkout"'>> ~/.bashrcecho 'alias gst="git status -sb"'>> ~/.bashrc
可使用如 gco 代替 git checkout命令