Android APK开发基础——git代码管理

本文详细介绍Git的安装配置过程,包括本地版本库的初始化、文件添加与提交,以及如何将本地仓库推送到GitHub上的远程仓库。此外,还介绍了如何管理用户信息、查看状态和日志等常用操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Git代码管理工具

https://blog.youkuaiyun.com/free_wind22/article/details/50967723

 

git下载安装

1、Git下载安装 , Windows用户下载地址:https://git-for-windows.github.io/ ,然后按默认选项安装即可。

2、安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功 。

 

需要填写用户名和邮箱作为一个标识

qqq@DESKTOP-FSPC6F6 MINGW64 ~

$ git config --global user.name "huangyuan"

 

qqq@DESKTOP-FSPC6F6 MINGW64 ~

$ git config --global user.email "824438827@qq.com"

 

本地仓库

1、在本地新建了文件夹作为本地仓库,把文件添加到版本库中

 

首次创建提交:

$ git init

$ git add E_001F_app1

$ git commit -m "e001f first commit"

$ git status

$ git log

$ git remote add origin https://github.com/yuanhhyuan/E001f.git

$ git push -u origin master

 

后续更新提交:

$ git status

modified:   NewZxing/app/src/main/res/layout/activity_main.xml

$ git add NewZxing/app/src/main/res/layout/activity_main.xml

  $ git commit -m "2nd comit"

$ git push origin master

 

修改多个文件后一次性提交:

$ git status

modified:   ScanZxing/.idea/inspectionProfiles/Project_Default.xml

        deleted:    ScanZxing/app/src/androidTest/java/com/zxcgw/wifi/wifiautoconnect/ExampleInstrumentedTest.java

        modified:   ScanZxing/app/src/main/AndroidManifest.xml

        deleted:    ScanZxing/app/src/main/java/com/zxcgw/wifi/wifiautoconnect/wifi/WifiAdmin.java

        deleted:    ScanZxing/app/src/main/java/com/zxcgw/wifi/wifiautoconnect/wifi/WifiLinstener.java

$ git add -A

$ git commit -a -m "2nd commit"

$  git push origin master

 

示例:

qqq@DESKTOP-FSPC6F6 MINGW64 ~

$ cd f:

qqq@DESKTOP-FSPC6F6 MINGW64 /f

$ cd git

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git

$ cd e001f1

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1

$ git init

Initialized empty Git repository in F:/git/e001f1/.git/

 

然后把andstudio代码目录E_001F_app1拷贝到/f/git/e001f1,目录如下:

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git add E_001F_app1

warning: LF will be replaced by CRLF in E_001F_app1/app/.idea/gradle.xml.

The file will have its original line endings in your working directory.

warning: LF will be replaced by CRLF in E_001F_app1/app/.idea/misc.xml.

The file will have its original line endings in your working directory.

……

The file will have its original line endings in your working directory.

warning: LF will be replaced by CRLF in E_001F_app1/gradlew.

The file will have its original line endings in your working directory.

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git commit -m "e001f first commit"

[master (root-commit) 1fac60f] e001f first commit

 142 files changed, 9268 insertions(+)

 create mode 100644 E_001F_app1/.gitignore

 ……

 create mode 100644 E_001F_app1/settings.gradle

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git status

On branch master

nothing to commit, working tree clean

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git diff E_001F_app1/app/src/main/java/com/zxcg/app/activity/MainActivity.java

diff --git a/E_001F_app1/app/src/main/java/com/zxcg/app/activity/MainActivity.ja                   va b/E_001F_app1/app/src/main/java/com/zxcg/app/activity/MainActivity.java

index c40de99..9fc127b 100644

--- a/E_001F_app1/app/src/main/java/com/zxcg/app/activity/MainActivity.java

+++ b/E_001F_app1/app/src/main/java/com/zxcg/app/activity/MainActivity.java

@@ -28,6 +28,8 @@ public class MainActivity extends BaseActivity implements IBod                   yTempCallback {

     protected void onCreate(@Nullable Bundle savedInstanceState) {

         super.onCreate(savedInstanceState);

         initSerialPort();

+

+               //git测试测试测试测试

 

     }

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git log

commit 1fac60f2c04fb15cf6658a52c7ca4bbbd2c42684 (HEAD -> master)

Author: huangyuan <824438827@qq.com>

Date:   Tue May 22 11:08:08 2018 +0800

 

    e001f first commit

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git add  E_001F_app1/app/src/main/java/com/zxcg/app/activity/MainActivity.java

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git commit -m "mainactivity add git测试"                                                         [master 01f97bb] mainactivity add git测试

 1 file changed, 2 insertions(+)

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git status

On branch master

nothing to commit, working tree clean

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git log

commit 01f97bbdb4f8a311f59a48d53259329f097baca4 (HEAD -> master)

Author: huangyuan <824438827@qq.com>

Date:   Tue May 22 11:29:03 2018 +0800

 

    mainactivity add git测试

 

commit 1fac60f2c04fb15cf6658a52c7ca4bbbd2c42684

Author: huangyuan <824438827@qq.com>

Date:   Tue May 22 11:08:08 2018 +0800

 

    e001f first commit

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git reset --hard HEAD^

HEAD is now at 1fac60f e001f first commit

 

 

 

=====

理解工作区与暂存区的区别?

  工作区:就是你在电脑上看到的目录,比如目录下testgit里的文件(.git隐藏目录版本库除外)。或者以后需要再新建的目录文件等等都属于工作区范畴。

  版本库(Repository):工作区有一个隐藏目录.git,这个不属于工作区,这是版本库。其中版本库里面存了很多东西,其中最重要的就是stage(暂存区),还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD

  我们前面说过使用Git提交文件到版本库有两步:

  第一步:是使用 git add 把文件添加进去,实际上就是把文件添加到暂存区。

  第二步:使用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支上。

========

 

 

远程仓库

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git remote add origin https://github.com/yuanhhyuan/E001f.git

 

qqq@DESKTOP-FSPC6F6 MINGW64 /f/git/e001f1 (master)

$ git push -u origin master

Counting objects: 204, done.

Delta compression using up to 4 threads.

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

Writing objects: 100% (204/204), 4.65 MiB | 313.00 KiB/s, done.

Total 204 (delta 28), reused 0 (delta 0)

remote: Resolving deltas: 100% (28/28), done.

To https://github.com/yuanhhyuan/E001f.git

 * [new branch]      master -> master

Branch 'master' set up to track remote branch 'master' from 'origin'.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值