抛弃windows以及svn后,发现上传代码这样一个以前无比简单的操作成为了影响工作效率的障碍,经过一番努力,终于理清楚了整个过程,下面就分享一下这个过程。
首先要确认自己的电脑是否安装了git,只需要在命令行输入git命令,如果输出结果像下面这样,说明git安装成功:
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
These are common Git commands used in various situations:
start a working area (see also: git help tutorial)
clone Clone a repository into a new directory
init Create an empty Git repository or reinitialize an existing one
work on the current change (see also: git help everyday)
add Add file contents to the index
结果太长,这里省略显示。
使用git --version查看当前版本;
如果未安装,则按照系统提示输入“sudo apt-get install git“安装git,也可以自行下载安装包安装;
接下来需要进行一些必要的设置以使git能够正常工作,
首先需要对ssh key进行配置,如果未对其进行配置,在进行git命令时会有如下错误提示:
这里需要使用git config global --list命令查看我们的用户名以及邮箱是否已经配置,执行命令后如果发现没有配置,则需要进行如下操作:
git config --global user.name "这里换上你的用户名"
git config --global user.email "这里换上你的邮箱"
然后执行如下命令生成ssh key:
ssh-****** -t rsa -C "之前配置的邮箱地址"
执行命令后需要进行一些确认:
1.确认**的保存路径,如果默认直接回车;
2.如果上一步的路径已经有**文件,需要确认是否覆盖;
3.创建密码,如果不需要直接回车;
4.确认密码;
执行过程如下:
这样我们cd到目录~/.ssh后发现存在文件github.pub和id_rsa,其中github.pub文件中保存的使我们生成的**,将它复制出来,然后来到自己的github,进入setting页面,找到ssh and GPG keys,将生成的**配置进去,title随便写,将之前github.pub中的文本拷贝到输入框中,然后保存就可以记性git命令的操作了。
clone命令操作起来很容易,但反向的操作就比较麻烦了,之前在windows平台上面有gitdesk这样的可视化工具,方便使方便了,但对于自身对git的理解没有任何帮助,所以这里总结一下如果使用命令行进行代码的上传操作。
首先在个人GitHub上面建立一个所需要的仓库,然后使用git clone命令下载到本地,命令行cd到本地文件,然后输入:
git init
这一步其实也可以不做,当仓库为空时尽量使用这一命令,在进行完代码的编写以及修改后,输入命令:
git add .
这里是将项目的文件添加到缓存,注意最后是’.’,如果只是同步单一文件,只要把它换成文件名就可以了。
接下来就是将缓存中的文件commit 到git 仓库,即:
git commit -m" 上传代码的注释"
这里可以直接添加修改需要添加的注释,如果只输入git commit ,则会进入vim编辑,也可以在其中添加注释的修改。
下面需要链接到自己的远程仓库,可以使用http或者ssh的方式,命令为:
git remote add origin 链接
然后就可以将代码进行上传,上传之前最好pull一下,防止与他人产生冲突,命令为:
git pull origin master
最后执行push操作,即上传代码:
git push origin master
完成后显示类似“To github.com:rallets-network/spider.git
27b95d9…4d8a7bc master -> master“即表示commit成功。