git 常用
发布日期:2022-02-09 20:39:15 浏览次数:8 分类:技术文章

本文共 5963 字,大约阅读时间需要 19 分钟。

 

 

使用git做代码托管

 

+++ init做git的初始化+++lounious@ali-198299:~/Aone$     git initInitialized empty Git repository in /Users/lounious/Aone/.git/+++git clone拉取远程代码 +++lounious@ali-198299:~/Aone$     git clone http://gitlab.alibaba-inc.com/suikun.lzc/git_library_pythoncode.gitCloning into 'git_library_pythoncode'...remote: Counting objects: 7, done.remote: Total 7 (delta 0), reused 0 (delta 0)Unpacking objects: 100% (7/7), done.+++本地代码提交,检查git状态+++lounious@ali-198299:~/Aone/test_auot$     git status+++git add 添加文件项++++++git commit 提交简介++++++git push 推送至远端git库+++lounious@ali-198299:~/Aone/test_auot$     git add .lounious@ali-198299:~/Aone/test_auot$     git commit -m "add test filr"[master 4ef2421] add test filr Committer: lounious 
6 files changed, 239 insertions(+), 1 deletion(-) create mode 100644 .idea/encodings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/test_auot.iml create mode 100644 .idea/workspace.xml +++git push 推送至远程+++lounious@ali-198299:~/Aone/test_auot$ git pushEnumerating objects: 12, done.Counting objects: 100% (12/12), done.Delta compression using up to 4 threadsCompressing objects: 100% (9/9), done.Writing objects: 100% (9/9), 3.29 KiB | 3.29 MiB/s, done.Total 9 (delta 0), reused 0 (delta 0)To http://gitlab.alibaba-inc.com/suikun.lzc/test_auot.git e28f69c..4ef2421 master -> masterlounious@ali-198299:~/Aone/test_auot$

 

git push完成后,可以在远端的仓库看到提交的文件或代码

 

提交记录及变更比对

本文以伙伴工具上commit的记录去获取的版本变更。以后每次版本发布(注意不是提测)后要去更新一下xPaaS的提测信息

提测时要做变更管控,测试从哪个版本测试到哪个版本。该方法适用于边迭代边测试的情况。

image.png

比如:老版本为10.1.61.29-45,在伙伴中查询查询commitId为8023f42a(伙伴显示8位,打包后显示7位)。

从上图获取本次测试的版本为10.1.61.30-46,对应的commitId为7e8b84b

将版本号和commit关联起来,去查询对应版本之间的修改。

image.png

比对两个版本的变更数据。

如下9个文件变更,12条插入,45个删除

+++比对两次提交的文件修改。lounious@MacBook-Pro:~/Documents/xPaaS_dcf/xPaaS-Container$     git diff --stat 7e8b84b 8023f42a base/src/main/java/com/alipay/iot/xpaas/plugin/H5InternalAppPlugin.java       |  2 +- container/build.gradle                                                        |  2 +- container/src/main/AndroidManifest.xml                                        |  1 - container/src/main/java/com/alipay/iot/xpaas/TinyUtils.java                   |  5 ++--- container/src/main/java/com/alipay/iot/xpaas/TinyWelcome.java                 | 15 ++------------- container/src/main/java/com/alipay/iot/xpaas/ui/CustomH5Activity.java         |  7 ++----- container/src/main/java/com/alipay/iot/xpaas/ui/H5ActivityUtils.java          |  2 +- gradle.properties                                                             |  2 +- tinyCommand/src/main/java/com/alipay/iot/tinyCommand/TinyCommandReceiver.java | 21 ++------------------- 9 files changed, 12 insertions(+), 45 deletions(-)lounious@MacBook-Pro:~/Documents/xPaaS_dcf/xPaaS-Container$

比对两个版本中文件修改的差异

lounious@MacBook-Pro:~/Documents/xPaaS_dcf/xPaaS-Container$     git diff  7e8b84b 8023f42a container/build.gradlediff --git a/container/build.gradle b/container/build.gradleindex 239c6f4c..11065bdc 100644--- a/container/build.gradle+++ b/container/build.gradle@@ -123,7 +123,7 @@ dependencies {     bundle "com.alipay.android.phone.mobilecommon:lbs-build:1.9.0.190322152359@jar"     bundle "com.alipay.multimedia.base:basic-build:1.19.0.190201151149@jar"     bundle "com.alipay.android.phone.mobilesdk:aspect-build:1.4.1.190330043113@jar"-//    bundle "com.alipay.android.phone.wallet:nebuladebug-build:1.0.0.190401175712@jar" // useless debug bundle+    bundle "com.alipay.android.phone.wallet:nebuladebug-build:1.0.0.190401175712@jar"     bundle "com.alipay.android.phone.thirdparty:androidsupportpalette-build:7.22@jar"     bundle "com.alipay.android.phone.mobilesdk:monitor-build:2.1.4.190401182105@jar"     bundle "com.alipay.android.phone.wallet:beephoto-build:1.0.0.190312151905@jar"lounious@MacBook-Pro:~/Documents/xPaaS_dcf/xPaaS-Container$

使用git

1、git安装

 

2、使用git bash

git bash通过/和\判断你要使用linux或者win的语法,擅长linux命令行的获取路径用/

 

lanvis@LANVIS15AB MINGW64 ~$ pwd/c/Users/lanvislanvis@LANVIS15AB MINGW64 ~$ cd /c/Users/lanvis@LANVIS15AB MINGW64 /c/Users

 

 

 

3、初始化git环境

新建一个空的文件夹:

mkdir Git_Library

cd Git_Library

git init

 

lounious@ali-198299:~/Documents$         mkdir Git_Librarylounious@ali-198299:~/Documents$     cd ./Git_Library/lounious@ali-198299:~/Documents/Git_Library$     git initInitialized empty Git repository in /Users/lounious/Documents/Git_Library/.git/lounious@ali-198299:~/Documents/Git_Library$

 

MTK系列宝盒的地址:

http://gitlab.alipay-inc.com/flab/PayBoxMini.git

esp平台代码,初始化repo

repo init -u http://gitlab.alipay-inc.com/alipbox/manifest.git

3.1 git pull 和git clone的区别

git pull 更新当前目录下的代码/文件。如果有相同名称内容不同的文件则提示是否强制覆盖

git clone http://git.***/name.git:下拉远程仓库中的代码,以name为文件夹创建目录。将仓库中的文件全部下拉下来。

总结:首次拉取代码使用git clone,后面更新代码使用git pull

4、拉取代码

初次拉取代码

首次拉取代码,使用git clone命令。

#复制代码到本地

git clone ****.git

进入工程目录下

#查询所有本地分支

git branch -al

#查询远程分支

git branch -r

更新代码

在每次登录git bash之后,都要对代码更新,除非是自己使用的代码

git pull命令:将远程代码拉到本地,更新代码

5、提交新代码(文件)

$ git add test.txt$ git commit -m "add test.txt"[master b84166e] add test.txt 1 file changed, 1 insertion(+) create mode 100644 test.txt

建立远程连接:git remote add origin https://git.***.git  

上传代码到远程库,上传之前最好先Pull一下,执行命令: git pull origin master

再执行:git push origin master

6、删除远程文件

git clone git@github.com:xxx/xxx.git

对需要删除的文件、文件夹进行如下操作:

git rm test.txt (删除文件)

git rm -r test (删除文件夹)

提交修改

git commit -m “Delete some files.”

上传代码到远程库,上传之前最好先Pull一下,执行命令: git pull origin branch

将修改提交到远程仓库的xxx分支:

git push origin branch

7、切换分支

git checkout  [branch]

 

当checkout远程分支的时候,因为本地做了修改。会有提示:

error: Your local changes to the following files would be overwritten by merge:

Please, commit your changes or stash them before you can merge.

Aborting

---------------------  

放弃本地修改,直接覆盖之

git reset --hardgit pull

 

7、git 配置相关

查询当前git 配置

git config --list

添加远程仓库

git remote set-url origin "https://..."

git config remote.origin.url "https://..."

删除远程仓库

git remote rm origin

添加全局变量

git remote --global set-url origin "https://..."

git config --global remote.origin.url "https://..."

转载地址:https://blog.csdn.net/louniuous/article/details/105853042 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:如何使用Django源码-windows/pycharm
下一篇:android测试之android studio集成工具使用

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月12日 13时48分28秒