如何使用git管理你的java脚本(入门篇)
2017-06-24 00:00
197 查看
写这个文章的目的,纯粹是为了有个地方收藏我经常要用的命令而已。(年纪大了,记性不好了,好记忆不如烂笔头)
文中截图及介绍中的工程地址有可能不一致,因为文中地址大部分都已修改,遗漏的可能未修改,截图比较麻烦,就不重新截图了:
1.申请GitLab账号,获取项目的ssh地址
申请公司的Git账号,假设GitLab的地址:http://192.168.1.1:80
Java脚本工程的项目地址: (事先登录gitlab创建对应的工程,需要权限)
git@192.168.1.1:qa/Auto_Test.git
对应的http地址:
http://192.168.1.1/qa/Auto_Test.git
2.使用git命令的前提条件
2.1 安装工具Git-1.9.5-preview20150319.exe
去网上下载,安装完后,选中一个目录,点击右键可见:Git Bash
2.2 生成ssh key,打通Git Bash 与 GitLab(git仓库服务)
首先建一个本地仓库目录,例如:D:\05-git-test
选中该目录,点击右键,点击Git Bash
执行命令:ssh-keygen -t rsa -C 123456@qq.com
#将邮箱替换成自己的邮箱;一直回车即可;
#命令执行完会提示公钥和私钥文件产生的路径;
例如:C:\Users\Administrator.USER-20141014FO\.ssh
拷贝文件id_rsa.pub的内容到GitLab中,如下图中的key中:
测试ssh是否可正常连接:
执行命令:ssh git@192.168.1.1:qa/Auto_Test.git
3.向远程git项目,第一次提交eclipse工程代码
3.1 先将远程git仓库克隆到本地仓库(D:\05-git-test)中
在Git Bash 中,执行命令:git clone git@192.168.1.1:qa/Auto_Test.git
然后去查看本地仓库目录,如下图:
Ps:
1.可以在Git Bash的标题栏上,点击右键—编辑—粘贴 上述命令;
点击右键—编辑—标记 是复制的功能;
2.在Git Bash中执行命令就像Linux一样;
3.2 拷贝待提交的eclipse工程目录下的所有文件到D:\05-git-test\Auto_Test(即跟.git同一目录)
如下图:
3.3 提交本地仓库代码到git仓库
执行命令:
cdapi_test_tools
gitstatus #查看本地代码变更情况
gitadd . #将本地当前目录下的所有文件,添加到缓冲区中
gitcommit –m “first push script” #将缓冲区中的文件,提交到git本地的服务器中
# -m 添加代码提交时的注释
gitpush origin master #将git本地服务器的代码提交到远程仓库的master分支上
去GitLab上,查看代码是否提交到对应的项目下了:
4.从git远程仓库克隆已经存在的代码,做出修改后并重新提交
4.1 跟3.1一样执行克隆命令:
gitclone git@192.168.1.1:tests/Auto_Test.git
#注意选择该命令执行的目录
执行完命令,会在当前目录下生成Auto_Test目录,该目录中会出现.git文件;
#该目录下是有代码的,所以不用跟3.2一样操作;
4.2 打开eclipse,将从远程克隆下来的工程导入eclipse,如图:
注意:1.以maven工程的形式导入!!!
4.3 在eclipse中,增加或者修改java文件后,将修改提交到git远程仓库中
在Git Bash中,执行命令:
cd Auto_Test
gitstatus #查看本地代码变更情况
gitadd . #将本地当前目录下的所有文件,添加到缓冲区中
gitcommit –m “modify java script” #将缓冲区中的文件,提交到git本地的服务器中
# -m 添加代码提交时的注释
gitpull origin master
#每次提交修改内容到git仓库前,先拉取远程仓库中的最新代码,
看看他人的修改跟自己的修改是否有冲突
执行完该命令后,进入到eclipse中,查看对应的工程:
如果有冲突,eclipse会报错,如下图:
必须手动修改冲突的代码之后,才能再次提交,如图:
冲突代码修改好后,再次执行代码:
gitstatus #如有冲突,该命令的结果中会有提示
gitadd .
gitcommit –m “fix bug”
gitpull origin master #虽然冲突已解决,还是必须再拉一次代码
gitpush origin master #提交修改到git远程仓库中
注意:git status 检查出有冲突,千万不能跳过git pull,直接git push,很有可能覆盖别人的代码
4.4 在eclipse中,如若删除了一些文件或目录,将此修改提交到git远程仓库中
在Git Bash中,执行命令:
cd Auto_Test
gitstatus #可以检查出本地删除了哪些文件
gitrm logs/xiaokatest_
gitrm src/main/java/com/xiaoka/test/base/utils/TestEnvs.java
……
补充说明:如果有很多文件需要删除时,操作如下:
git add --all (或git rm -r –cached .)
删除操作慎重!
gitcommit –m “delete logs file and TestEnvs.java”
git pull origin master
gitpush origin master #没有冲突,pull之后就是push修改到git远程仓库
5.Q&A
5.1 如何将空目录提交到git仓库中
在空目录下,创建隐藏文件(文件名自定义)
在GitBash下:
cd空目录名
touch.gitkeep
补充:工程中出现空目录,提交代码的时候,可能会报错:
error:src refspec master does not match any.
5.2 部分目录不希望提交到git仓库,提交时如何忽略它们?
在java项目的根目录下,放一个.gitignore文件,增加以下配置:
/.settings/
/logs/
/target/
/test-output/
/.classpath
/.project
表示这些目录/文件不提交到git仓库;
说明:
1)logs是本地执行用例时log4j打印的日志,test-output是testng的输出日志,target是编译和执行时本地会自动生成的 。
2)/.settings/,/.classpath,/.project跟项目在本地编译环境有关,故不提交到git仓库;
如果从git仓库中迁出的项目需要进行编译:
方法:clean一下当前工程,会自动编译java文件,生成target目录中的文件;
文中截图及介绍中的工程地址有可能不一致,因为文中地址大部分都已修改,遗漏的可能未修改,截图比较麻烦,就不重新截图了:
1.申请GitLab账号,获取项目的ssh地址
申请公司的Git账号,假设GitLab的地址:http://192.168.1.1:80
Java脚本工程的项目地址: (事先登录gitlab创建对应的工程,需要权限)
git@192.168.1.1:qa/Auto_Test.git
对应的http地址:
http://192.168.1.1/qa/Auto_Test.git
2.使用git命令的前提条件
2.1 安装工具Git-1.9.5-preview20150319.exe
去网上下载,安装完后,选中一个目录,点击右键可见:Git Bash
2.2 生成ssh key,打通Git Bash 与 GitLab(git仓库服务)
首先建一个本地仓库目录,例如:D:\05-git-test
选中该目录,点击右键,点击Git Bash
执行命令:ssh-keygen -t rsa -C 123456@qq.com
#将邮箱替换成自己的邮箱;一直回车即可;
#命令执行完会提示公钥和私钥文件产生的路径;
例如:C:\Users\Administrator.USER-20141014FO\.ssh
拷贝文件id_rsa.pub的内容到GitLab中,如下图中的key中:
测试ssh是否可正常连接:
执行命令:ssh git@192.168.1.1:qa/Auto_Test.git
3.向远程git项目,第一次提交eclipse工程代码
3.1 先将远程git仓库克隆到本地仓库(D:\05-git-test)中
在Git Bash 中,执行命令:git clone git@192.168.1.1:qa/Auto_Test.git
然后去查看本地仓库目录,如下图:
Ps:
1.可以在Git Bash的标题栏上,点击右键—编辑—粘贴 上述命令;
点击右键—编辑—标记 是复制的功能;
2.在Git Bash中执行命令就像Linux一样;
3.2 拷贝待提交的eclipse工程目录下的所有文件到D:\05-git-test\Auto_Test(即跟.git同一目录)
如下图:
3.3 提交本地仓库代码到git仓库
执行命令:
cdapi_test_tools
gitstatus #查看本地代码变更情况
gitadd . #将本地当前目录下的所有文件,添加到缓冲区中
gitcommit –m “first push script” #将缓冲区中的文件,提交到git本地的服务器中
# -m 添加代码提交时的注释
gitpush origin master #将git本地服务器的代码提交到远程仓库的master分支上
去GitLab上,查看代码是否提交到对应的项目下了:
4.从git远程仓库克隆已经存在的代码,做出修改后并重新提交
4.1 跟3.1一样执行克隆命令:
gitclone git@192.168.1.1:tests/Auto_Test.git
#注意选择该命令执行的目录
执行完命令,会在当前目录下生成Auto_Test目录,该目录中会出现.git文件;
#该目录下是有代码的,所以不用跟3.2一样操作;
4.2 打开eclipse,将从远程克隆下来的工程导入eclipse,如图:
注意:1.以maven工程的形式导入!!!
4.3 在eclipse中,增加或者修改java文件后,将修改提交到git远程仓库中
在Git Bash中,执行命令:
cd Auto_Test
gitstatus #查看本地代码变更情况
gitadd . #将本地当前目录下的所有文件,添加到缓冲区中
gitcommit –m “modify java script” #将缓冲区中的文件,提交到git本地的服务器中
# -m 添加代码提交时的注释
gitpull origin master
#每次提交修改内容到git仓库前,先拉取远程仓库中的最新代码,
看看他人的修改跟自己的修改是否有冲突
执行完该命令后,进入到eclipse中,查看对应的工程:
如果有冲突,eclipse会报错,如下图:
必须手动修改冲突的代码之后,才能再次提交,如图:
冲突代码修改好后,再次执行代码:
gitstatus #如有冲突,该命令的结果中会有提示
gitadd .
gitcommit –m “fix bug”
gitpull origin master #虽然冲突已解决,还是必须再拉一次代码
gitpush origin master #提交修改到git远程仓库中
注意:git status 检查出有冲突,千万不能跳过git pull,直接git push,很有可能覆盖别人的代码
4.4 在eclipse中,如若删除了一些文件或目录,将此修改提交到git远程仓库中
在Git Bash中,执行命令:
cd Auto_Test
gitstatus #可以检查出本地删除了哪些文件
gitrm logs/xiaokatest_
gitrm src/main/java/com/xiaoka/test/base/utils/TestEnvs.java
……
补充说明:如果有很多文件需要删除时,操作如下:
git add --all (或git rm -r –cached .)
删除操作慎重!
gitcommit –m “delete logs file and TestEnvs.java”
git pull origin master
gitpush origin master #没有冲突,pull之后就是push修改到git远程仓库
5.Q&A
5.1 如何将空目录提交到git仓库中
在空目录下,创建隐藏文件(文件名自定义)
在GitBash下:
cd空目录名
touch.gitkeep
补充:工程中出现空目录,提交代码的时候,可能会报错:
error:src refspec master does not match any.
5.2 部分目录不希望提交到git仓库,提交时如何忽略它们?
在java项目的根目录下,放一个.gitignore文件,增加以下配置:
/.settings/
/logs/
/target/
/test-output/
/.classpath
/.project
表示这些目录/文件不提交到git仓库;
说明:
1)logs是本地执行用例时log4j打印的日志,test-output是testng的输出日志,target是编译和执行时本地会自动生成的 。
2)/.settings/,/.classpath,/.project跟项目在本地编译环境有关,故不提交到git仓库;
如果从git仓库中迁出的项目需要进行编译:
方法:clean一下当前工程,会自动编译java文件,生成target目录中的文件;
相关文章推荐
- 如何使用git管理你的java脚本(入门篇)
- Git使用入门,使用原理解读及如何在GitLab、GitHub或者Stash上管理项目(三)
- Git使用入门,使用原理解读及如何在GitLab、GitHub或者Stash上管理项目(二)
- Git使用入门,使用原理解读及如何在GitLab、GitHub或者Stash上管理项目(一)
- JAVA游戏编程之三----j2me 手机游戏入门开发--俄罗斯方块_5_使用LUA脚本写游戏
- 《partner4java 讲述Spring入门》之:spring cache支持(spring3.1如何使用cache 缓存)
- 【如何使用shell 脚本调用java进程】
- GIT使用入门——如何将本地工程在服务器新建仓库
- 如何在CEGUI中使用Lua脚本入门学习
- windows下使用git及github仓库管理项目 入门
- 【如何使用shell 脚本调用java进程】
- 如何使用Docker进行Java入门级开发
- 对于如何在编码过程中,我们如何管理代码的问题,下面是针对代码管理工具git的安装和使用
- Eclipse下创建好的Java工程如何使用Maven进行管理
- 【转】如何使用git进行版本管理
- 如何重新获得使用脚本远程管理运行SP2 的计算机的能力
- Linux之RedHat是如何使用脚本管理服务的
- 如何使用Docker进行Java入门级开发
- 如何在windows下使用git及github仓库管理项目
- 如何在windows下使用git及github仓库管理项目