-
如何将本地项目推送至远程仓库?
- 项目根路径下鼠标右单击,选择“Git Base Here“;
- 在命令窗口中输入:
git init - 添加需提交的文件:
git add . #.表示路径下的所有文件,也可使用文件夹名称或文件后缀,如.idea、target、*.iml等 - 提交至暂存区
git commit -m "这里填写本地修改的注释内容" - 关联远程仓库:
git remote add origin [这里是git仓库地址] - 将当前分支关联到远程master分支
git branch --set-upstream-to=origin/master master - 拉取远程仓库内容:
git pull - 提交修改:
git push
-
如何将项目push到多个远程仓库?
-
方法一:打开每个项目的.git文件夹下的config文件(windows请务必打开隐藏文件展示,打开姿势自行百度)
[remote "origin"] url = 远程仓库1 fetch = +refs/heads/*:refs/remotes/origin/* [remote "远程参考2名称"] url = 远程仓库2 fetch = +refs/heads/*:refs/remotes/origin/*
或者使用命令行
git remote add gitee 你的gitee项目地址
该种方式可选择任一参考进行pull操作
- 方法二:
[remote "origin"] url = 原有的git项目地址 fetch = +refs/heads/*:refs/remotes/origin/* url = 新增的gitee项目地址
或者使用命令行
git remote set-url --add origin 你的gitee项目地址
该种方式默认只能对第一个远程仓库进行pull操作
-
查看远程仓库
git remote
-
如何添加忽略文件?
-
本地仓库忽略
本地仓库的文件忽略规则可以在.git/info/exclude
文件中添加. 对当前这个仓库下的所有文件起作用. 这些忽略的文件不会提交到共享库中, 因而不会被协作者所共享. 规则如下(更多规则可以参考shell的正则表达式):*.[oa] # 忽略以 o 或 a 为拓展名的文件 *~ *.exe .* # 忽略所有以 . 开头的文件 test.cpp # 忽略这个文件 /test/ # 忽略 **根目录** 下的 test 文件夹里面所有的内容
-
当前工作目录添加文件忽略
对于每一级工作目录, 创建一个.gitignore
文件, 向该文件中添加要忽略的文件或目录. 规则同上 -
全局忽略
不需要在每一个仓库中添加.gitignore
文件或者修改exclude
文件(毕竟在.git文件里乱动可能项目就没了), 只需要在用户账户文件夹下建立.gitignore_global
文件就可以忽略我们想忽略的内容, 步骤如下:
(1)在git bash下执行命令git config --global core.excludesfile ~/.gitignore_global
, 然后你会发现,~/.gitconfig
文件里多了一行;
(2)创建.gitignore_global
文件, 在里面写上规则就好了;
-
如何将已push到远程仓库的文件删除(如开发环境配置文件)但本地不删除?
git rm -r --cached .vscode # 将文件或文件夹从暂存区中删除,如.idea、*.iml等
git commit -m 'delete .vscode config' # 将修改后的暂存区合并到HEAD中
git push origin master # 推到远端
-
如何将想要忽略掉的文件的相关记录清理掉?
删除暂存区的文件, 同时删除本地的文件
git rm file_name # 删除本地文件, 同时也从暂存区中删除
git commit -m "delete" # 合并到HEAD中
git push origin master
提交删除记录
git add -A
git commit -m "delete"
git push origin master
-
如何将master的代码更新到branch上?
git checkout master
git pull
git checkout dev
git merge master
git push -u origin dev
-
如何将branch的代码合并到 master ?
git checkout dev
git pull
git checkout master
git merge dev
git push -u origin master
-
如何强制用远程仓库覆盖本地代码?
git fetch --all # 拉取所有更新,不同步 git reset --hard origin/master #本地代码同步线上最新版本(会覆盖本地所有与远程仓库上同名的文件); git pull #再更新一次(其实也可以不用,第二步命令做过了其实)
或者直接拼接成一行执行
git fetch --all && git reset --hard origin/master && git pull
-
如何回滚代码?
- 首先找到你需要回滚的版本号,可以通过日志查看
git log -3 #-3表示只显示最后3条提交记录,记录按时间降序排列
- 选择上图红色框框圈起来的执行的commit版本号
git reset --hard f3eb8f9df34dc6ba47e477e05c8772a62d653fbb
- 强制性push到远程仓库
git push -f origin master
-
fork项目更新
- 用
git remote
查看远程主机状态git remote -v git remote add upstream git@github.com:xxx/xxx.git git fetch upstream git merge upstream/master git push
- 如何克隆分支
# 使用Git下载指定分支命令为:git clone -b 分支名 仓库地址 [项目别名]
git clone -b dev git@gitee.com:zhanggq89/iBizEHR.git
# 或者
git clone -b dev git@gitee.com:zhanggq89/iBizEHR.git HRSystem