安装完成后设置账户:
git config --global user.name "name"
git config --global user.email "email"
rm .git -rf //删除本地仓库
1/ git init //创建一个库
2/ git add <file> //添加到缓存区
3/ git commit -m "some remark" //提交
4/ git status //检查工作区的状态
5/ git diff //找不同
6/ git log //显示提交日志 or git log --pretty=oneline
7/ git reset --hard HEAD^ //回退上一个版本 HEAD~100 回退到上100个版本
8/ git reset --hard <commit id> //回退到指定版本
9/ git reflog //记录每一次命令 可以查找每一次的commit id
10/ git checkout -- <file> //丢弃工作区的修改
11/ git reset HEAD<file> //可以把暂存区的撤回到工作区(add之后,未commit)
12/ git rm //删除文件,之后要执行提交命令
13/ git remote add origin git@github.com:zhangweida1995/first.git //已有的本地仓库关联到远程库
14/ git push -u origin <branch Name> //第一次提交本地内容,之后用git push origin <branch Name>推送内容
15/ git clone <git link> //从远程库克隆项目到本地
16/ git branch //查看分支
17/ git branch <branch Name> //创建分支
18/ git checkout <branch Name> //切换分支
19/ git checkout -b <branch Name> //创建+切换分支
20/ git merge <branch Name> //合并分支到当前分支 比如主分支master 新分支dev,合并dev分支到主分支
23/ git merge --no-ff -m "message" //git 默认使用fast forward模式,删除分支后 会删掉合并记录。此命令禁用此模式,使用普通模式。
21/ git branch -d <branch Name> //删除分支
29/ git branch -D <branch Name> //丢弃没有被合并的分支,强制删除。
22/ git log --graph --pretty=oneline --abbrev-commit //干分支提交后,切换主分支,再修改内容,会产生冲突,手动解决冲突,在提交。合并完成。
24/ git stash //把暂未完成的工作区隐藏起来,切换到另一个分支干活。
25/ git stash list //查看隐藏的工作区
26/ git stash apply //恢复隐藏工作区,但不删除stash,
27/ git stash drop //删除stash
28/ git stash pop //恢复隐藏工作区的同时删除stash。
<!--多人协作 -->
30/ git remote //查看远程库信息 默认名称 origin
31/ git remote -v //显示抓取和推送的地址,如果有推送权限。
32/ git push origin <branch name> //推送分支,把该分支上的所有本地提交推送到远程库。
33/
1.git clone 先从远程库克隆项目。
2.git branch 只能看到master分支
3.git checkout -b <branch name> origin/<branch name> 创建远程origin的<branch name>分支到本地。
3.git push origin <branch name> 修改文件后,把<branch name> push到远程
4.git pull 拉取最新的提交
5.git pull --set-upstream-to=origin/<branch name> <branch name> 设置本地分支与远程分支的链接
34/ git rebase //把本地未push的分叉提交历史整理成直线。
35/ git tag v1.0 <commit id> //给提交的版本打标签。 默认给最新的提交打标签,使用commit id 给指定的打标签。
36/ git show <tagname> //查看标签信息。
37/ git tag -d <tagname> //删除本地标签。
38/ git push origin <tagname> //推送标签到远程。 一次性推送全部标签 git push origin --tags
39/ git push origin :refs/tags/<tagname> //删除远程标签 需先删除本地的,再使用此命令删除远程的。