Git经常使用简约笔记

开发场景:

  • 远程有主分支 master,提供用户使用的正式的稳定的版本.html

  • 开发分支 dev,用于平常开发.android

  • 开发者们在本地任意建立本身的本地分支 Local Branch.git

  • 而后推到远程本身的分支 再合并到远程分支 dev。bash

一.使用studio的版本控制工具

1.配置git (android sudio 以mac版为例))app

Android Studio通常安装后已经自行配置了git程序所在的位置,在设置->Version Contral-> Git -> Path to git executable中可查看.
复制代码

2.对项目启用git管理 这步是将项目归入git管理之下dom

点击android studio菜单栏的VCS后,选择Enable Version Control Integration. 在弹出的框里选择Git .
复制代码

3.切换到Project视图,而后在Project上面右击ssh

弹出列表中选择git->add.这样就能够将项目的文件归入git管理。
复制代码

4.添加忽略文件(在项目的.gitignore中) 或者下载插件(ignore 右键new .ignore file)ide

*.iml
.gradle
/local.properties
/.idea
.DS_Store
/build
/captures
/MPChartLib/bulid/(三方依赖的build添加忽略)
.externalNativeBuild
复制代码

5.提交commit(向上的箭头) 第一次线配置仓库路径 登陆帐号密码 commit-> push工具

二.使用命令行

--------------------------------基本------------------------fetch

初始化: git init

添加全部文件受控版本控制: git add . (指定文件: git add 'name')

提交: git commit -m 'your word'

推送到远程: git push origin

从远称拉取: git pull

--------------------------------分支---------------------

新建本地分支:git branch 'name'

推送本地分支到远程: git push 'origin' '分支名'(必须与本地分支名一致)

查看本地与远程绑定状态: git branch -vv

查看全部分支: git branch -a

追踪远程分支(绑定): git branch --set-upstream-to='origin' '分支名'

切换分支: git checkout '分支名'

合并分支代码: git merge '分支名'

同步dev分支 log日志::

  • ➜ project git:(ming) git checkout dev
  • Switched to branch 'dev'
  • ➜ project git:(dev) git merge ming
  • Updating 7cf39b1..06e1529
  • Fast-forward
  • app/build.gradle | 32 ++++++++++----------------------
  • app/src/main/AndroidManifest.xml | 3 +++
  • create mode 100644 app/src/main/res/layout/item_withdrawlist.xml
  • ➜ project git:(dev) git add .
  • ➜ project git:(dev) git status
  • On branch dev
  • nothing to commit, working tree clean
  • ➜ project git:(dev) git push origin dev
  • Total 0 (delta 0), reused 0 (delta 0)
  • To http://47.104.17.92/Ming/project.git
  • 7cf39b1..06e1529 dev -> dev
  • ➜ project git:(dev) git log

更新内容:

--------------------不是那么经常使用-------------------------

查看本地全部分支 : git branch (*表明当前所在的分支)

查看远程全部分支: git branch -r

全部本地分支和远程分支:git branch -a

查看状态 : git status

-----------------------tag相关---------------------------

打标签 : git tag 'tagName'

查看全部标签 : git tag

删除标签 : git tag -d 'tagName'

将本地标签推送到远程仓库 : git push origin 'tag'

删除远程标签 : git push origin -d 'tagName'

参考: 经常使用git命令清单

往后再增长...目前的基本能够知足大部分需求了吧.


9.1更新

D:\Space\AndroidProject\Base>git remote -v
origin  https://gitee.com/1806613533/Base.git (fetch)
origin  https://gitee.com/1806613533/Base.git (push)

D:\Space\AndroidProject\Base>git remote remove origin

D:\Space\AndroidProject\Base>git remote -v

D:\Space\AndroidProject\Base>git remote add origin https://gitee.com/1806613533/Base.git
复制代码

git remote -v 查看远程仓库地址

git remote remove origin 移除地址

git remote add origin '远程仓库地址' 添加地址

-----------------增长SSL密钥---------------------

ssh-keygen -t rsa -C "Xxxx@qq.com"

cat ~/.ssh/id_rsa.pub

➜ Bit-z_and git:(ming) ✗ ssh-keygen -t rsa -C "Xxxx@qq.com"

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/mrming/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /Users/mrming/.ssh/id_rsa. Your public key has been saved in /Users/mrming/.ssh/id_rsa.pub. The key fingerprint is: SHA256:U7uTbgTtbINDJYsDLuDutR9eA7wWb82bj8a27viJ+NA Xxxx@qq.com The key's randomart image is: +---[RSA 2048]----+ | | |. . . . | |.. . . . =. | | .. o o +... | |. . + oS=. | | . . * =.o | |. . .= E.+. | | . .o * +=. | | .+.+@+. | +----[SHA256]-----+

➜ Bit-z_and git:(ming) ✗ cat ~/.ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDzzfF0CbytS72kR8ejXN7MKO/DeyET4kwohCWlCMGFHMiyOSuuhBd0mhB6HsurdJ50nBNlJXmHw9lbQSqfy0b5iTST3+/Wc8hQADFJOkPNWx3uKCWSzK3TfNm+NNxJi4p7QksibEi5wsiX5uCLBQj86Ye7SzKuOLph9aR6Un5KOaXkl2fa4xXPz7 Xxxx@qq.com


git 遇到的错误:

截屏

若是远程和本地commit各有领先的话,这个时候会出现你的那个错误 .只需删除 或者add -f 指定文件便可.

add -f 表示强制添加 如a.txt 文件是在忽略文件路径 加-f表示force 操做 add -f 结合reset --hard 目的就是删除本地忽略文件

关于解决冲突: <<<<<<< HEAD 到 ======= 中间的内容是local提交的。

======= 到 >>>>>>> 是远程仓库中的内容

11.22新增:

以下需求: 我目前在dev分支,想用qin分支的代码彻底覆盖dev,用以下指令:

git fetch --all
 git reset --hard origin/qin(完全回退到某个版本) 
 git pull
复制代码

删除本地分支

git branch -d <BranchName>
复制代码

删除远程分支

git push origin --delete <BranchName>
复制代码

强制推送命令

git push -u origin master -f
复制代码

推送命令后出现了这样的状况: You are not allowed to force push code to a protected branch on this project.

解决: 进入网站:“设置” – > “保护分支” - > 取消保护 .便可

相关文章
相关标签/搜索