1。当远程仓库无项目
git remote add origin git地址 添加远程仓库地址 相当于事开始连接远程仓库
git remote -v # 查看远程服务器地址和仓库名称
git branch --set-upstream master origin/master 根据远程分支 新建本地分支 并关联相应的分支名
git add . 添加路径下所有文件 并将所有修改过的工作文件提交暂存区
git commit -m “备注” 提交指定文件 到缓存区
git push -u origin master 讲项目推送到指定分支及到达远程仓库
2.从远程仓库拉项目
git clone git地址 就是第一次从远处仓库拉项目
git pull # 抓取远程仓库所有分支更新并合并到本地
git add <file> # 将工作文件修改提交到本地暂存区
git add . # 将所有修改过的工作文件提交暂存区
git commit -m “something” someFile # 提交指定文件
git commit -a # 把所有已经跟踪过的文件暂存,并提交
git push # push所有分支
3.当远程仓库已建立并且有文件时
1、先把本地的git 删除
rm -rf .git
2、新建一个新的git本地仓库
git init
//将本地的文件添加到仓库缓存区
git add .
//将本地文件提交到本地git仓库
git commit -m"提交"
3、绑定远程仓库
git remote add origin <#git地址#>
4、把远程仓库文件拉到本地
git pull origin master
如果文件有冲突则
git pull origin master --allow-unrelated-histories
5、修改冲突文件然后提交到本地仓库重复第一步的添加到本地的操作
6、提交到远程仓库
git push -u origin master
解决failed to push some refs to git问题
第一步
//更新远程代码到本地
git pull --rebase origin master
//推送到远程
git push -u origin master
13.0-13.3之间系统存在疯狂杀后台的情况
介绍几个其他的分支命令
1、把远程的代码拉到本地的一个新的分支上
git fetch remoteName remoteBranch:newBranch
2、查看新分支和本地分支的区别
git diff newBranch
3、合并分支
git merge newBranch [--allow-unrelated-histories]
4、删除分支
git branch -d newBranch
5、后悔药
git reflog
找到你要回到的步骤number
git reset --hard number
git diff <file> # 比较当前文件和暂存区文件差异
git diff
终端 touch .gitignore 在文件夹就生成了一个“.gitignore”文件
open .gitignore 打开配置文件
配置文件 .gitignore 可参考意见生成对应语言的网站 https://www.gitignore.io 里面很多注释,可以看下,然后这个里面有些不全的需要自己根据项目添加,下面是过滤规则
过滤规则
* ?:代表任意的一个字符
* *:代表任意数目的字符
* {!ab}:必须不是此类型
* {ab,bb,cx}:代表ab,bb,cx中任一类型即可
* [abc]:代表a,b,c中任一字符即可
* [ ^abc]:代表必须不是a,b,c中任一字符
git config --global core.excludesfile ~/.gitignore_global 需要被执行过滤文件
git config --global --list 查看全局配置 看下需要被执行的过滤文件是否在配置里
另外附上删除指定目录下所有带xx后缀的命令
sudo find /Users/apple/Documents/workspace/justSVN/ -name ".svn" -exec rm -r {} ;
意思就是搜寻在/Users/apple/Documents/workspace/justSVN/中所有的「.svn」并用rm刪除。
-r的参数是为了不要一个个去按「y」
在终端里输入下面命令即可让它们显示出来。
defaults write com.apple.finder AppleShowAllFiles -bool true
如果想恢复隐藏,可以用这个命令:
defaults write com.apple.finder AppleShowAllFiles -bool false