git安装这个没啥说的,https://git-scm.com/downloads 自己到官网去下载即可
git常用指令汇总
1、git版本查看 git --version
2、git查看config配置 git config --list
3、git设置全局的name和email
git config --global user.name "zhihou"
git config --global user.email "*****.qq.com"
设置完后可以使用git config --list查看即可
也可以单独查看某个例如
git config user.name
git config user.email
git工作区、暂存区和版本库
git add . 把工作区的东西放到暂存区
git commit -m "sss" 把暂存区的东西,放到本地仓库
git push就是把本地仓库里面东西,放到远程仓库去
clear 清记录
首先初始化一个git仓库
新建一个文件夹如git_test1
你会发现文件下多了一个.git文件,说明仓库初始成功
这个git_test1就是我们的工作区
git add .
(这里如果你想查看暂存区的话可以这样做
git status 查看状态这个是查看暂存区的状态这个比较详细,只有文件运行了git add <name>之后才能查看
git status -s 直接查看变更文件状态简览(这个输出会去掉Changes to be committed:这个)
)
git commit -m "第一次"
git remote -v 可以查看关联地址
git remote add origin 你码云或者github的远程地址 (本地和远程做关联)
git push origin master
你看看你的远程仓库应该就有东西了
开发二拉取代码
git clone 远程地址
差异比较
git diff
看暂存前后的变化
要查看尚未暂存的文件更新了哪些部分,不加参数直接输入 git diff
若要查看已暂存的将要添加到下次提交里的内容,可以用 git diff --cached
命令。(Git 1.6.1 及更高版本还允许使用 git diff --staged
,效果是相同的,但更好记些。)
下面介绍分支相关
git branch 查看分支
git branch "2020.7.5" 创建分支
这就有两个分支了
切换分支 git checkout "2020.7.5"
查看你会发现另一个分支被选中了
要知道一点,你在分支上创建的东西,没合并之前,你切换分支,不在那分支上,文件会消失
git log --oneline 查看log(日志
比如在2020.7.5分支新增文件提交到远程
git push origin "2020.7.5" 就可以看到,远程仓库有两个分支了
然后就是怎么合并分支
首先合并的时候你要切换回主分支
git checkout master
然后git merge "2020.7.5"
这就是把2020.7.5合并到master
git log做一下引申
git log -p 按补丁格式显示每个更新之间的差异。
git log -p -2 你也可以加上 -2
来仅显示最近两次提交
git log --stat 如果你想看到每次提交的简略的统计信息,你可以使用 --stat
git log --pertty=oneline 将每个提交放在一行显示,查看的提交数很大时非常有用
git log --name-only 仅在提交信息后显示已修改的文件清单。
git log --graph 显示 ASCII 图形表示的分支合并历史。
--pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)。
git log --since=2weeks //下面的命令列出所有最近两周内的提交
--until
, --before 仅显示指定时间之前的提交。
--author 仅显示指定作者相关的提交。
打标签
git tag
git 忽略某些文件上传设置.gitignore
-
所有空行或者以
#
开头的行都会被 Git 忽略。 -
可以使用标准的 glob 模式匹配。
-
匹配模式可以以(
/
)开头防止递归。 -
匹配模式可以以(
/
)结尾指定目录。 -
要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(
!
)取反
例举一个遇到的小问题
我本地git init 创建的初始化了一个git仓库,然后我在仓库随便写了点东西,我push远程仓库出现了一个报错
这个问题就是本地仓库和远程差异太大造成的,你首先要合并差异
git pull origin master --allow-unrelated-histories //把远程仓库和本地合并,消除差异
然后解决冲突重新add commit push 3部曲就好了
参考pro git中文版