批量添加文件:
git add . 添加新文件和被修改文件,不包括被删除文件,包括子目录,但是不包括空目录,并且会根据.gitignore做过滤
git add * 会忽略.gitignore把任何文件都加入
git add -u 监控已经被add的文件, 不会提交新文件
git add -A 添加所有状态的文件,是上面两个功能的合集
只添加指定文件:
git add filename.txt
git add *.txt
查看文件:
git ls-files 查看已存放文件
git status 查看还没添加的文件
回退:
git reset HEAD
git checkout --
git checkout . 未commit,回退本地所有修改的。没有的提交的,都返回到原来的状态
git checkout
git reset --hard
git reset --soft
git reset --hard HEAD^ 已commit,回退到上一个版本, HEAD 和当前 branch 切到上一条commit
git reset --hard HEAD 表示回退当前版本,HEAD指向当前版本
强制覆盖:
git fetch --all
git reset --hard origin/master
git pull
#去掉回车换行转换
git rm -r --cached . 注意 这里是有 "." 的, ". " 代表当前目录
git config core.autocrlf false
提交设置:
git config --global user.name "your git account name"
git config --global user.email "your email with which registered on git"
提交:
git commit -m "..." 提交新文件
git commit -am "..." 只提交修改了的文件
git push
git push -u origin master
查看远程服务器地址URL:
git remote -v
提交大文件报错,假若当前提交含有大文件:
git add .
git commit -m "Initial commit"
git push
提示:Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com
先安装git-lfs:
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash
git reset
apt-get install git-lfs
git lfs install
对所有的大文件执行git lfs track "filename"和git add .gitattributes,例如git lfs track "*.caffemodel"把需要提交的文件加入track,这一步成功后会生成一个gitattributes文件:
git lfs track models/c3d/c3d_ucf_model-4999.caffemodel #生成.gitattributes
git add .gitattributes #添加并commit gitattributes文件
git commit -am "gitattr for big file" #需要先将 .gitattributes文件单独commit并push,
git push #push时需三次输入用户好口令.
完成.gitattributes文件的提交之后,再进行提交大文件
git add models/c3d/c3d_ucf_model-4999.caffemodel
git commit -m "training iteration 4999 of c3d model"
git push
#如果还报上面的"Large files detected. You may want to try Git Large File Storage"错,先备份文件,然后执行下面这个非常危险的命令,完全删除本地的所有文件退回到初始状态,然后再track、add和commit以及push:
git reset --hard origin/master
git lfs ls-files
#如果因为某些原因某个目录下的文件没有提交,再次git add和commit时说没有任何更新而提交不了,可以先清理这个目录,然后再git add和commit和push:
git rm -r --cached
git add
git commit -m "..."
git push