您的位置:首页 > 其它

Git的一些用法(下)

2016-09-19 14:36 197 查看

(4) 提交分支

提交分支命令 : 将本地的分支提交到 GitHub中;

[plain] view plaincopy





git push origin experiment

(5) 分支合并移除

合并分支命令 : 合并分支之后, 分支中有的文件在 主分支中也会显示, 相当于将branch1 分支中的文件拷贝了一份到master分支中;

[plain] view plaincopy





git merge branch1

合并结果 :

[plain] view plaincopy





Updating f1bb97a..7f5785e

Fast-forward

description_branch1.txt | 0

1 file changed, 0 insertions(+), 0 deletions(-)

create mode 100644 description_branch1.txt



.

(6) 删除分支

删除分支命令 :

[plain] view plaincopy





git branch -d branch1

强制删除分支命令 : 如果branch1 分支还没有被合并的话, Git是不允许删除这个分支的, 此时要想删除该分支, 就只能使用下面的命令强制删除该分支 :

[plain] view plaincopy





git branch -D branch1

4. Git工作流程

(1) 两种工作流程

协作开发工作流程 : 这种情况是最复杂的情况, 多人团队共同开发一个项目;

-- 与远程仓库同步 : git pull ;

-- 修改文件 : 添加 删除 修改文件;

-- 查看变更 : git status ;

-- 载入变更 :添加文件, 先使用git add fileName, 在使用 git commit -m 'note' 载入变更; 如果是删除 修改文件, 直接使用 git commit -m 'note' 提交;

-- 重复 : 重复执行 修改文件 查看变更 载入变更 提交载入动作;

-- 上传 : 使用 git push 命令将项目源码提交带GitHub中去;

单独开发工作流程 : 如果是个人独立开发, 仅追踪本地文件变更, 就不需要提交到服务器上, 因为Git是分布式的;

-- 修改文件 :

-- 提交变更 :

-- 重复 :

(2) 简单示例

1> 独立开发示例

该示例不会上传, 仅在本地进行操作;

从GitHub中检出项目源码 : 注意, 检出的源码是根目录源码, 我们在总仓库的根目录检出即可,不同再为项目创建目录;

[plain] view plaincopy





git clone git@github.com:han1202012/AndroidPictureViewer.git

-- 检出克隆结果 :

[plain] view plaincopy





Cloning into 'AndroidPictureViewer'...

remote: Counting objects: 86, done.

remote: Compressing objects: 100% (62/62), done.

remote: Total 86 (delta 3), reused 86 (delta 3)

Receiving objects: 100% (86/86), 1.67 MiB | 109.00 KiB/s, done.

Resolving deltas: 100% (3/3), done.

Checking connectivity... done.

删除bin和gen目录 : 这两个目录是Android工程编译产生的临时文件, 没有必要上传到GitHub中去;

[plain] view plaincopy





rm -rf bin gen

-- 查看删除结果状态 :

[plain] view plaincopy





git status

-- 结果 :

[plain] view plaincopy





On branch master

Your branch is up-to-date with 'origin/master'.

Changes not staged for commit:

(use "git add/rm <file>..." to update what will be committed)

(use "git checkout -- <file>..." to discard changes in working directory)

deleted: bin/AndroidManifest.xml

deleted: bin/ImageView_Test.apk

deleted: bin/classes.dex

deleted: bin/res/crunch/drawable-xxhdpi/ic_launcher.png

deleted: bin/resources.ap_

deleted: gen/shuliang/han/imageview_test/BuildConfig.java

deleted: gen/shuliang/han/imageview_test/R.java

提交缓存 :

[plain] view plaincopy





git commit -a

-- 提交结果 :

[plain] view plaincopy





[master e4377ba] delete bin and gen directory.

28 files changed, 2 insertions(+), 110 deletions(-)

create mode 100644 .gitignore

delete mode 100644 bin/AndroidManifest.xml

delete mode 100644 bin/ImageView_Test.apk

delete mode 100644 bin/classes.dex

delete mode 100644 bin/resources.ap_

delete mode 100644 gen/shuliang/han/imageview_test/BuildConfig.java

delete mode 100644 gen/shuliang/han/imageview_test/R.java

2> 协作开发示例

与远程仓库同步 :

[plain] view plaincopy





git pull

-- 如果其他人没有提交项目到GitHub上, 就会出现下面结果 :

[plain] view plaincopy





Already up-to-date.

修改文件后查看变更 :

[plain] view plaincopy





git status

-- 如果没有变更会出现下面情况 :

[plain] view plaincopy





On branch master

Your branch is ahead of 'origin/master' by 1 commit.

(use "git push" to publish your local commits)

nothing to commit, working directory clean

载入变更 : 如果有变更, 那么使用命令载入变更. 使用 git commit -a 或者 git add 命令;

-- 添加文件 : 先使用 git add 文件名 来添加文件到缓存, 之后使用 git commit -m '' 命令提交代码到本地缓存;

-- 删除改变文件 : 直接使用 git commit -m '', 提交删除 或则 改变 到本地缓存;

提交项目源码到服务器 :

[plain] view plaincopy





git push

-- 提交源码结果 :

[plain] view plaincopy





warning: push.default is unset; its implicit value is changing in

Git 2.0 from 'matching' to 'simple'. To squelch this message

and maintain the current behavior after the default changes, use:

git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

git config --global push.default simple

See 'git help config' and search for 'push.default' for further information.

(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode

'current' instead of 'simple' if you sometimes use older versions of Git)

Counting objects: 4, done.

Delta compression using up to 2 threads.

Compressing objects: 100% (2/2), done.

Writing objects: 100% (3/3), 292 bytes | 0 bytes/s, done.

Total 3 (delta 1), reused 0 (delta 0)

To git@github.com:han1202012/AndroidPictureViewer.git

1ddf8c7..e4377ba master -> master

查看GitHub中的源码情况 : gen 和 bin 目录果然被删除了;

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: