Git使用
一、使用命令行方式提交文件
本地代码上传远程分支?
1.git clone xxx 下载远程仓库中的代码
2.在文件夹中右键git bash进入黑窗口,创建本地分支dev(本地分支要和远程分支同名的,不然会新建一个新的分支)
git branch dev
3.然后git pull(相当于刷新远程仓库中代码到本地)
4.git add . (或者git add ‘代码名称’)
5.git commit -m '备注信息' --(做完这一步你就发现你本地那个文件夹中包括你刚复制粘贴进去的你自己的代码文件夹也变绿了)
6.git pull origin 远程分支名(例如git pull origin dev) ---这一步就是合并远程分支名的
7.git push origin 本地分支名:远程分支名(例如:git push origin HEAD:dev)----这一步就是将代码推送到远程仓库的
新修改的代码提交步骤:
1)git status //查看哪些文件被修改
2)git add . //添加到缓存区
3) git commit -m "提交信息" //提交到本地仓库
4)git push origin master //提交到远程仓库
-
git创建dev分支并提交本地文件到dev分支
-
git命令
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master)
$ git remote -v //查看远程仓库
origin https://gitee.com/shangguan-jiannan/SchoolPersonManagementSystem-VUE.git (fetch)
origin https://gitee.com/shangguan-jiannan/SchoolPersonManagementSystem-VUE.git (push)
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master)
$ git branch //查看所有本地分支
* master
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master)
$ git branch dev //git branch 分支名:创建一个新的分支
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master)
$ git branch //查看所有本地分支
dev
* master
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master)
$ git branch -r //查看所有远程分支
origin/HEAD -> origin/master
origin/develop
origin/master
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master)
$ git checkout dev //git checkout dev:切换到dev分支上;git checkout master:切换到主分支上
Switched to branch 'dev'
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev)
$ git add . //
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev)
$ git commit -m "dev分支提交测试" //提交
[dev 8e6b39b] dev分支提交测试
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 dev_test.txt
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev)
$ git push origin HEAD:dev //把文件push到远程仓库的Dev分支(没有的gitee会自动新建)
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 16 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 314 bytes | 314.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.4]
remote: Create a pull request for 'dev' on Gitee by visiting:
remote: https://gitee.com/shangguan-jiannan/SchoolPersonManagementSystem-VUE/pull/new/shangguan-jiannan:dev...shangguan-jiannan:master
To https://gitee.com/shangguan-jiannan/SchoolPersonManagementSystem-VUE.git
* [new branch] HEAD -> dev
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev)
$
-
执行完以上命令就将文件上传到远程dev分支了
这是一个空文件
-
现在我们用vim在里面写入内容后重新提交
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $ git branch dev * master 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $ git checkout dev Switched to branch 'dev' 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ cat dev_test.txt 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ vim dev_test.txt 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ cat dev_test.txt I am Chinese! 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ git add . warning: in the working copy of 'dev_test.txt', LF will be replaced by CRLF the next time Git touches it 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ git commit -m "dev_test.txt文件内容编写并提交" [dev a0949c9] dev_test.txt文件内容编写并提交 1 file changed, 1 insertion(+) 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ git push origin HEAD:dev Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 16 threads Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 322 bytes | 322.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 remote: Powered by GITEE.COM [GNK-6.4] To https://gitee.com/shangguan-jiannan/SchoolPersonManagementSystem-VUE.git 8e6b39b..a0949c9 HEAD -> dev 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $
-
执行以上命令就提交成功了
文件内容也可以看到
-
现在文件就在你的dev分支里,但是查看主分支,它的文件里面并没有dev里面的东西
上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (dev) $ git checkout master Switched to branch 'master' Your branch is up to date with 'origin/master'. 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $ cat dev_test.txt cat: dev_test.txt: No such file or directory 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $
-
用
git merge 分支名
命令把该分支的东西合并到主分支上上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $ git merge dev Updating f6f981f..a0949c9 Fast-forward dev_test.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 dev_test.txt 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $ cat dev_test.txt //再次查看就有了 I am Chinese! 上官剑南@LAPTOP-XIAOSHU MINGW64 /e/毕业设计/SchoolPersonManagementSystem-VUE (master) $
-
删除分支的命令
(1)删除分支:
git branch -d 分支名
(2)删除远程分支:
git push origin --delete 分支的名字
git branch -dr 你的远程分支
二、使用IDEA提交文件
ps:idea中修改过的文件没有提交时蓝色
-
处于本地master分支可以看到只有一行字
-
依次点击,看到签出(checkout)后再次点击即可切换到dev远程分支可以看到两行字
-
此时本地和远程都是dev分支
-
输入内容文件变为蓝色
-
点击右上方小勾
-
推送到远程仓库
-
成功后即可在远程仓库看到
-
此时并未提交到主分支
-
提交到主分支需要建立Pull Request请求
-
创建Pull Request
-
依次点击审查通过、测试通过即可
-
依次点击合并分支、接受Pull Request就可以了
-
现在可以查看master分支是否有新增了