🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 全局设置 ` `由于git是分布式管理工具,需要输入用户名和邮箱以作为标识,因此,在命令行输入下列的命令: ` `1.设置用户名 ``` git config --global user.name "yuanhongping" ``` ` `2.设置邮箱 ``` git config --global user.email "yuan_hp@sina.cn" ``` Note:注意git config  --**global**参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱,根据个人情况设置。 ## 创建版本库 ` `版本库就是我们所说的“仓库”,英文名repository,你可以理解为一个目录,这个目录里面的所有文件都可以被Git管理,文件的修改,删除Git都能跟踪, ` `以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。 ` `此次在自己的linux电脑的该路径做为说明。 ![](https://img.kancloud.cn/d7/cb/d7cb8d5e6061aeaae3b704081a54a3c5_623x383.png) ## 添加文件到版本库 ` `要添加文件到版本库,首先需要将这个目录变为git可以管理的仓库,命令如下: ``` git init ``` ![](https://img.kancloud.cn/97/f0/97f0f0a998d52539d069ad928427178d_626x78.png) ## 新建文件或者添加文件 ` `然后在该目录下面创建文件,或者拷贝已有的文件到该目录下。之后使用命令 ``` git status ``` 来查看当前状态。 ![](https://img.kancloud.cn/ab/35/ab359a509cfdc8c996d7644ec2692ad4_633x464.png) ` `可以看到新添加进来的文件还没有添加到仓库缓存。 ` `使用命令 ``` git add <文件>... ``` 把项目添加到仓库(或`git add .`把该目录下的所有文件添加到仓库,注意点是用空格隔开的) ` `再次使用`git status`查看状态,看看文件是否已经添加。 ![](https://img.kancloud.cn/dd/cd/ddcda2f1b5348d216065321c9f276062_631x545.png) ` `用`git commit -m “注释内容” `把项目提交到仓库。 ![](https://img.kancloud.cn/b9/19/b9194e376648a3f53aafe391c90bc579_804x428.png) ` `在Github上创建一个Git仓库。你可以直接点New repository来创建,比如我创建了一个Electron learn的仓库.进入仓库。 ![](https://img.kancloud.cn/fc/44/fc443be5bbf02cf901ade1b37c7ebd8c_1092x603.png) ## 关联Git仓库 ` `在Github上创建好Git仓库之后我们就可以和本地仓库进行关联了,复制Clone or download中的内容。根据创建好的Git仓库页面的提示,可以在本地仓库的命令行输入。 ``` git remote add origin https://github.com/yuan-hp/Electron-learn.git ``` 注意上述地址可以直接到GitHub上去拷贝过来,如下: ![](https://img.kancloud.cn/35/d4/35d4b0a2203679f9497044b7e9de9807_749x539.png) ` `关联好之后我们就可以把本地库的所有内容推送到远程仓库(也就是Github)上了,通过: ``` git push -u origin master ``` **由于新建的远程仓库是空的,所以要加上-u这个参数**,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候只需下面这样就可以了: ``` `git push origin master` ``` ` `上传时可能出现错误无法上传,如下: ![](https://img.kancloud.cn/4c/63/4c636e3dfc99ea5dfc8d4553e0582512_868x180.png) ` `不要通过网页提交,通过网页提交一次,然后在终端再次push的时候,会认为网上代码仓库已经被其他地方提交过一次代码,此时会拒绝终端push ` `这个时候只能是pull,然后才能再次在终端提交。 ` `也就是说,避免这种问题的注意事项是:不要通过网页向仓库提交文件。 ``` 解决办法: 1.强行上传   git push -u origin +master 2.尽量先同步github上的代码到本地,在上面更改之后再上传 使用 git pull origin master 将远程的同步到本地仓库 ``` ## 第一次之后的同步 ` `在进行了第一次上传后,再次编辑时,首先通过 ``` git pull origin master ``` 将远程仓库同步到本地仓库,然后本地进行修改后进行的操作为 ``` git pull origin master(讲远程同步到本地)-->修改/添加文件-->git add .-->git commit -m "注释内容" -->git push origin master(同步本地仓库到远程仓库) ``` ## linux上传至gitee的脚本 为了使得每次同步到云端仓库更简单,自己写了一个脚本: ```bash #!/usr/bin/env bash #UFUNCTION=自动同步当前项目至github仓库 pwd git status git add . if [ $# -gt 0 ];then git commit -m "$*" else dat=$(date +%Y/%m/%d\ %H:%M:%S) git commit -m "$dat" fi git push origin master ```