(1)删除文件/文件夹
删除文件夹
git rm XXX -r
删除文件
git rm XXX
git rm XXX -r
git commit -m "Sad"
git push
(2)修改远程地址,先删除origin然后再添加
查看远程地址
git remote -v
删除origin地址
git remote rm origin
删除another
git remote rm another
(3)添加地址
添加origin
git remote add origin SSH/HTTPS
添加another
git remote add another SSH/HTTPS
(4)使用.gitignore过滤文件
①放在将.gitignore放在要删除的文件的同级下
②把文件添加进.gitignore
③以上不行,可能因为缓存(把本地缓存删除(改变成未track状态)),使用下面的语句即可。
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
(5)彻底清除history里的文件记录
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch FILE_PATH' --prune-empty --tag-name-filter cat -- --all
//FILE_PATH:是文件路径,不是文件名。可以在github里的history找到相应的文件,把它的路径复制下来。
git push origin master --force
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now
####参考资料: https://help.github.com/articles/remove-sensitive-data/
(6)撤回
同时对多个文件执行了git add
操作,但本次只想提交其中一部分文件
git add *
git status
// 取消暂存
git reset HEAD <filename>
(7)分支
- 切换分支
# 查看分支
git branch -a
# 切换到 dev分支
git checkout dev
# 创建新分支,并切换到新分支下
git checkout -b xxx
(8)暂存
有时候,当前东西没改完, 但要先改别的东西并提交。
而之前改动的东西不想删除,所以暂存起来。
// 暂存,会保存当前改动(但并不会保存刚创建的)
git stash
// 恢复暂存的内容
git stash apply
(9)提交到远端分支
不想提交在本分支上,想直接提交到远端的分支上
// 当前分支 : branchA
// 要提交的远端分支:branchB
git push origin branchA:branchB
(10)远端代码强拉本地
git fetch --all
git reset --hard origin/master
git pull
(11)修改分支名
// 1. 修改名称
git branch -m oldName newName
// 2. 删除远程分支
git push --delete origin oldName
// 3. 上传新命名的分支
git push origin newName
// 4. 关联本地分支与线上分支
git branch --set-upstream-to origin/newName