一,忽视提交
1,.gitignore
在项目的主目录中打开.gitignore文件,若没有则进行创建,windows下无法创建.开头文件,自行解决
2,编辑文件
# 此为注释 – 将被 Git 忽略
build/
# 忽略 build/ 目录下的所有文件
doc/*.txt
# 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
*.a
# 忽略所有 .a 结尾的文件
3,缓存
编辑保存后,push仍然提交文件,无法生效,可能新建的文件在git中会有缓存,如果某些文件已经被纳入了版本管理中
git
rm
-r --cached .
git add .
git commit -m
'update .gitignore'
二,强行覆盖
1,git pull 全部
更新文件的时候,有时候需要强行覆盖本地所有文件,比如初始化导入项目的时候。
git fetch --all
git reset --hard origin/master
git pull
2,git fetch 部分
git fetch
git checkout -m 版本号 文件/文件夹
举例:
$ git fetch
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 8 (delta 3), reused 8 (delta 3), pack-reused 0
Unpacking objects: 100% (8/8), done.
From github.com:fffy2366/checkout
cd1768d..2408ca5 master -> origin/master
$ git checkout -m 2408ca5 1.php 2.php
三,查看远程仓库
1,git remote -v
查看远程仓库的地址
2,git remote show origin
查看远程仓库的详细信息,地址和分支等
四,PUSH默认分支
1,在执行git push时,出现以下警告提示
warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:
git config --global push.default matching
To squelch this message and adopt the new behavior now, use:
git config --global push.default simple
2,原因
matching’ 参数是 Git 1.x 的默认行为,其意是如果你执行 git push 但没有指定分支,它将 push 所有你本地的分支到远程仓库中对应匹配的分支。而 Git 2.x 默认的是 simple,意味着执行 git push 没有指定分支时,只有当前分支会被 push 到你使用 git pull 获取的代码
3,解决
选择自己要默认的push方式:git config --global push.default matching
再次执行:git push
五,查看git版本
1,git --version,查看当前git的版本
在clone 时出现error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version错误。
此操作需要git 2.16以上版本才能下载
git安装或者更新版本:https://blog.youkuaiyun.com/qq_19470683/article/details/84140397#
六,Git pull 后恢复到原来版本
1,git reflog master (查看本地master分支历史变动纪录)
2,git reset --hard <COMMIT_ID> (恢复到之前位置)
比如:git reset --hard master@{1}
持续更新中...