Github
上1.首先你需要一个Github
账号,所以还没有的话先去注册吧!https://github.com/
然后使用git需要先安装git工具,下载后直接傻瓜式安装即可:https://git-for-windows.github.io/
2.登录后,进入Github首页,点击New
新建一个项目。
3.填写相应信息后点击create repository
即可
Repository name: 仓库名称(输入英文名字)
Description(可选): 仓库描述介绍
Public, Private : 仓库权限(公开共享)
Add a README file: 添加一个README.md
Add .gitignore: 不需要进行版本管理的仓库类型,对应生成文件.gitignore
Choose a license: 证书类型,对应生成文件LICENSE
4.创建成功后界面如下,Code 处有两种地址复制下备用。
HTTPS地址为:
https://github.com/YIRUIJIE/test.git
SSH地址过程:[email protected]:YIRUIJIE/test.git
如果电脑首次获取SSH链接,则需要配置SSH keys
以便于后期Android Studio
管理安卓项目,使用https
链接国内可能会抽风的无法pull
和push
。SSH keys
过程如下:
打开 Git Bash Here
直接输入ssh-keygen -t rsa -C "你的邮箱"
生成 SSH keys
,我这里提示已经存在就不再搞了。
此时生成的文件存放在C:\Users\YRJ\.ssh\
目录下,打开文件id_rsa.pub
就是SSH keys
然后直接到Github账号设置Account settings
中的SSH and GPG keys
添加即可!
最后拉取代码用ssh的[email protected]:****/项目名.git
即可!
5.接下来就到本地操作了,使用Git Bash Here
,进入如下界面,test
即为我的项目名。
输入如下代码(关键步骤),把github仓库克隆到本地git clone [email protected]:YIRUIJIE/test.git
并cd test
进入到项目中,操作如下:
6.将本地项目文件夹下的所有文件,复制到test
里,如下:
7.接下来是将本地文件提交到远程仓库
git add *
(注:别忘记后面的*,此操作是把test文件夹里的文件都添加进来)
git commit -m "提交信息"
(注:“提交信息”里面换成你需要,如“test项目”)
8.git push -u origin main
(注:此操作目的是把本地仓库push到github上面。请不要使用:master
,当前使用的是main
。成功之后Github上就能看到你的项目了)
此步骤若使用https
链接,应该需要你输入帐号和密码,国内如果抽风的情况下,一直会提示失败
,所以最好用SSH
链接。
首次使用Git pull
他人代码时可能会出现以下提示问题:
Commit failed - exit code 128 received, with output: '*** Please tell me who you are.
Run
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: empty ident name (for <>) not allowed'
这是因为没有配置提交时的用户名和邮箱的原因,你可以直接执行:。
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
Gitee
上1.首先先在本地桌面上创建一个文件夹名字最好为英文,然后鼠标右键使用git bash
2. 在git中使用 git init
命令 //初始化一个git 本地仓库此时会在本地创建一个 .git 的文件夹
3.到Gitee上新建仓库,写仓库名称 选择是否开源 勾选使用Readme文件初始化这个仓库
4.使用git remote add origin https://gitee.com/你的码云用户名/XXXX
//添加远程仓库。
例如:git remote add origin https://gitee.com/yiruijie/yirj.git
5.使用 git pull origin master
命令,将码云上的仓库pull到先前创建的文件夹中,期间需要输入gitee上面的账号和密码,输入完成密码之后点击 OK。
可能会出现以下提示问题:
Commit failed - exit code 128 received, with output: '*** Please tell me who you are.
Run
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: empty ident name (for <>) not allowed'
这是因为没有配置提交时的用户名和邮箱的原因,你可以直接执行:
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
也可以到项目 .git\config文件最后加入
[user]
name = name
email = 你的邮箱@qq.com
6.完毕之后再把将要上传的文件,全部添加到之前在桌面创建的文件夹中并使用git add .
(. 表示所有的)或者 git add 文件名
// 将文件保存到缓存区
7. 然后使用git commit -m '这里写新推送的文件描述'
//添加文件描述
8.使用git push origin master
,将本地仓库推送到远程仓库,之后去刷新gitee就能看到推送上去的项目了。
Github
项目同步到gitee
且同时关联两个Git
远程项目复制Github
项目的https
链接,直接到gitee
创建项目从GitHub/GitLab导入仓库
选择从URL导入
,仓库名称
,路径
由链接自动生成最好不要改动,选择私有
然后 导入
即可!
完成之后,项目名称旁会有刷新同步
图标,克隆/下载
处复制项目https链接做备用。
HTTPS地址为: https://gitee.com/yiruijie/test.git
接下来就是项目导入Android Studio
,同时关联两个Git远程项目。
由于在国内开发环境的特殊愿意,github经常拉取很慢,有时我们直接就gitee复制github的项目来解决速度的问题,但是这和fork不一样,属于新建了一个分支。如果github的原项目更新,后续我们的库也要更新,如果使用gitee的刷新同步工具很容易把之前的更改强制覆盖掉。
打开Android Studio
,从gitee拉取项目Get from Version Control...
填入链接直接克隆即可!
点击Android studio
顶部工具栏VSC
->Git
->Remotes
,我们可以看到只有一个gitee的远程项目,将我们的github项目的git
链接添加进去,我们也可以通过命令git remote add github [email protected]:YIRUIJIE/test.git
进行添加并命名为github
点击Android Studio
工具的Terminal
使用git remote -v
命令,查看是否添加成功。
Android Studio
是看不到.git
目录的,所以进入项目文件,打开.git
下面的config
文件
可以看到目前,remote
信息是对的,但是branch
并没有我们创建的github
,关闭安卓项目重新打开,如果还是没有,可以手动添加如下信息到config
里:
[branch "github"]
remote = github
merge = refs/heads/github
进入本地分支然后刷新,remote
出现了github
,则是成功了。
之后改动github
上部分的代码,选择对应分支github
查看更新。
可以看到github
上新提交信息为1.改网址
。
选择右下角的本地分支main
选择 github/main'
。如果要看变化了那些代码请 Compare with Current(与当前比较)
,点击1.改网址
点击改变的文件
选择Compare with Local(与本地比较)
即可!
选择右下角的本地分支main
选择 github/main'
如果直接合并你可以直接Merge into Current(合并到当前)
。
如果本地改动的代码较少且没有冲突直接Merge into Current(合并到当前)
就会将github
上最新的代码合并到本地仓库。
然后直接push
到gitee
上的远程仓库即可!
如果本地改动的代码较多也提交到了gitee
远程仓库,使用Merge into Current(合并到当前)
在有冲突的情况下会弹出冲突文件让你手动解决冲突。
解决冲突后将结果本地代码提交到gitee
远程仓库即可!
小问题解决总结:
JetBrains系列软件内部
解决版本控制对比引起的只在空格和空行上有所不同问题:
快递按两次Shift
后 搜索 line separators
调整为自己使用的类型即可!如下图:
参考文章:解决 contents have differences only in line separators