git本地服务器(linux安装git服务器)

怎样使用git将本地代码上传到服务器

注册账户以及创建仓库

要想使用github第一步当然是注册github账号了。之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个git的简单教程。步骤如下:

打开直接在首页上注册

点按钮注册成功之后,在页面上方用户菜单上选择“+”->New repository创建一个新的仓库

为仓库取一个名字,点击创建仓库按钮你将成功创建一个仓库

安装git客户端

github是服务端,要想在自己电脑上使用git我们还需要一个git客户端,

windows用户请下载

mac用户请下载

一路next,安装成功后,回到C盘,或任何文件夹下,点鼠标右键会多出一些菜单

如 Git Init Hear、Git Bash、Git Gui,说明安装成功。

配置Git

我们先在电脑硬盘里找一块地方存放本地仓库,比如我们把本地仓库建立在C:\MyRepository\1ke_test文件夹下

进入1ke_test文件夹鼠标右键操作如下步骤:

1)在本地仓库里右键选择Git Init Here,会多出来一个.git文件夹,这就表示本地git创建成功。右键Git Bash进入git命令行,截图效果如下:

为了保险起见,我们先执行git init命令

$ git init

香港免费空间

为了把本地的仓库传到github,还需要配置ssh key。

2)在本地创建ssh key

$ ssh-keygen-t rsa-C"your_email@youremail.com"

后面的your_email@youremail.com改为你的邮箱。我的邮箱是lilu@1ke.co,也是在github上注册的那个邮箱:

直接点回车,说明会在默认文件id_rsa上生成ssh key。

然后系统要求输入密码,直接按回车表示不设密码

重复密码时也是直接回车,之后提示你shh key已经生成成功。

然后我们进入提示的地址下查看ssh key文件。我的电脑的地址是C:\Users\lilu\.ssh,其中lilu是我的电脑的名称

打开id_rsa.pub,复制里面的key。里面的key是一对看不懂的字符数字组合,不用管它,直接复制。

回到github网站,进入Account Settings,左边选择SSH Keys,Add SSH Key,

title随便填,粘贴key。

3)验证是否成功,在git bash下输入

$ ssh-T git@github.com

回车就会看到:You’ve successfully authenticated, but GitHub does not provide shell access。这就表示已成功连上github。

4)接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们

$ git config--global user.name"your name"$ git config--global user.email"your_email@youremail.com"

分别输入上述命令行回车,我的界面显示如下

5)进入要上传的仓库,右键git bash,添加远程地址

$ git remote add origin git@github.com:yourName/yourRepo.git

后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库,加完之后进入.git,打开config,这里会多出一个remote“origin”内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。

与github上的对应

提交上传

1)接下来在本地仓库里添加一些文件,比如README

在本地新建一个README文件

然后在命令行输入一下命令

$ git add README

$ git commit-m"first commit"

我的执行界面如下

2)上传到github

$ git push origin master

git push命令会将本地仓库推送到远程服务器。

git pull命令则相反。

注:首次提交,先git pull下,修改完代码后,使用git status可以查看文件的差别,使用git add添加要commit的文件。

大功告成,现在你知道如何将本地的项目提交到github上了。

gitignore文件

.gitignore顾名思义就是告诉git需要忽略的文件,这是一个很重要并且很实用的文件。一般我们写完代码后会执行编译、调试等操作,这期间会产生很多中间文件和可执行文件,这些都不是代码文件,是不需要git来管理的。我们在git status的时候会看到很多这样的文件,如果用git add-A来添加的话会把他们都加进去,而手动一个个添加的话也太麻烦了。这时我们就需要.gitignore了。

Git命令

查看、添加、提交、删除、找回,重置修改文件

git help<command>#显示command的helpgit show#显示某次提交的内容 git show$idgit co--<file>#抛弃工作区修改git co.#抛弃工作区修改git add<file>#将工作文件修改提交到本地暂存区git add.#将所有修改过的工作文件提交暂存区git rm<file>#从版本库中删除文件git rm<file>--cached#从版本库中删除文件,但不删除文件git reset<file>#从暂存区恢复到工作文件git reset--.#从暂存区恢复到工作文件git reset--hard#恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改git ci<file> git ci. git ci-a#将git add, git rm和git ci等操作都合并在一起做git ci-am"some comments"git ci--amend#修改最后一次提交记录git revert<$id>#恢复某次提交的状态,恢复动作本身也创建次提交对象git revert HEAD#恢复最后一次提交的状态

查看文件diff

git diff<file>#比较当前文件和暂存区文件差异 git diffgit diff<id1><id2>#比较两次提交之间的差异git diff<branch1>..<branch2>#在两个分支之间比较git diff--staged#比较暂存区和版本库差异git diff--cached#比较暂存区和版本库差异git diff--stat#仅仅比较统计信息

查看提交记录

git log git log<file>#查看该文件每次提交记录git log-p<file>#查看每次详细修改内容的diffgit log-p-2#查看最近两次详细修改内容的diffgit log--stat#查看提交统计信息

tig

Mac上可以使用tig代替diff和log,brew install tig

Git本地分支管理

查看、切换、创建和删除分支

git br-r#查看远程分支git br<new_branch>#创建新的分支git br-v#查看各个分支最后提交信息git br--merged#查看已经被合并到当前分支的分支git br--no-merged#查看尚未被合并到当前分支的分支git co<branch>#切换到某个分支git co-b<new_branch>#创建新的分支,并且切换过去git co-b<new_branch><branch>#基于branch创建新的new_branchgit co$id#把某次历史提交记录checkout出来,但无分支信息,切换到其他分支会自动删除git co$id-b<new_branch>#把某次历史提交记录checkout出来,创建成一个分支git br-d<branch>#删除某个分支git br-D<branch>#强制删除某个分支(未被合并的分支被删除的时候需要强制)

分支合并和rebase

git merge<branch>#将branch分支合并到当前分支git merge origin/master--no-ff#不要Fast-Foward合并,这样可以生成merge提交git rebase master<branch>#将master rebase到branch,相当于: git co<branch>&& git rebase master&& git co master&& git merge<branch>

Git补丁管理(方便在多台机器上开发同步时用)

git diff>../sync.patch#生成补丁git apply../sync.patch#打补丁git apply--check../sync.patch#测试补丁能否成功

Git暂存管理

git stash#暂存git stash list#列所有stashgit stash apply#恢复暂存的内容git stash drop#删除暂存区Git远程分支管理

git pull#抓取远程仓库所有分支更新并合并到本地git pull--no-ff#抓取远程仓库所有分支更新并合并到本地,不要快进合并git fetch origin#抓取远程仓库更新git merge origin/master#将远程主分支合并到本地当前分支git co--track origin/branch#跟踪某个远程分支创建相应的本地分支git co-b<local_branch> origin/<remote_branch>#基于远程分支创建本地分支,功能同上

git push# push所有分支

git push origin master#将本地主分支推到远程主分支git push-u origin master#将本地主分支推到远程(如无远程主分支则创建,用于初始化远程仓库)git push origin<local_branch>#创建远程分支, origin是远程仓库名git push origin<local_branch>:<remote_branch>#创建远程分支git push origin:<remote_branch>#先删除本地分支(git br-d<branch>),然后再push删除远程分支

Git远程仓库管理

git remote-v#查看远程服务器地址和仓库名称git remote show origin#查看远程服务器仓库状态git remote add origin git@ github:robbin/robbin_site.git#添加远程仓库地址git remote set-url origin git@ github.com:robbin/robbin_site.git#设置远程仓库地址(用于修改远程仓库地址) git remote rm<repository>#删除远程仓库

创建远程仓库

git clone--bare robbin_site robbin_site.git#用带版本的项目创建纯版本仓库scp-r my_project.git git@ git.csdn.net:~#将纯仓库上传到服务器上mkdir robbin_site.git&& cd robbin_site.git&& git--bare init#在服务器创建纯仓库git remote add origin git@ github.com:robbin/robbin_site.git#设置远程仓库地址git push-u origin master#客户端首次提交git push-u origin develop#首次将本地develop分支提交到远程develop分支,并且trackgit remote set-head origin master#设置远程仓库的HEAD指向master分支

也可以命令设置跟踪远程库和本地库

git branch--set-upstream master origin/master

git branch--set-upstream develop origin/develop此文章属转载,原文地址:另附:解决在使用git对源代码进行push到gitHub时可能会出错,error: failed to push some refs to git。出现错误的主要原因是github中的README.md文件不在本地代码目录中可以通过如下命令进行github与本地代码合并: git pull--rebase origin master重新执行之前的git push命令,成功!

git拉取远程代码到本地

git拉取代码到本地的方法是:

打开git命令窗口,输入命令【git clone github仓库地址】,然后回车即可拉取代码到本地仓库。

在实际项目开发过程中,往往是已经存在远程项目了,我们定义的需求是只需要简单的操作git,能够上传和下拉最新代码。

Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

Torvalds开始着手开发 Git是为了作为一种过渡方案来替代 BitKeeper。

Git的功能特性:

从一般开发者的角度来看,git有以下功能:

1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。

2、在自己的机器上根据不同的开发目的,创建分支,修改代码。

3、在单机上自己创建的分支上提交代码。

4、在单机上合并分支。

5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。

6、生成补丁(patch),把补丁发送给主开发者。

7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。

8、一般开发者之间解决冲突的方法,开发者之间可以使用pull命令解决冲突,解决完冲突之后再向主开发者提交补丁。

从主开发者的角度(假设主开发者不用开发代码)看,git有以下功能:

1、查看邮件或者通过其它方式查看一般开发者的提交状态。

2、打上补丁,解决冲突(可以自己解决,也可以要求开发者之间解决以后再重新提交,如果是开源项目,还要决定哪些补丁有用,哪些不用)。

3、向公共服务器提交结果,然后通知所有开发人员。

如何通过git把本地的代码上传到服务器

1、首先需要安装Git,如果已经安装,请跳过。由于Git是Linux开发的,所以大部分使用在Linux系统上,但肯定会有windows版的,我本身使用的是win10,下载安装即可:

2、安装好git服务器后。首先找到你项目的文件夹,比如项目名称为myproject,进入到这个文件夹,右键打开模拟linux风格的命令窗口

接下来依次执行命令:

git init//初始化版本库git add.//添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件 git commit-m"first commit"//把添加的文件提交到版本库,并填写提交备注12345

到目前为止,我们完成了代码库的初始化,但代码是在本地,还没有提交到远程服务器,所以关键的来了,要提交到就远程代码服务器,进行以下两步:

git remote add origin你的远程库地址//把本地库与远程库关联git push-u origin master//第一次推送时git push origin master//第一次推送后,直接使用该命令即可推送修改12345

把本地库的内容推送到远程。使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。

说明:用户名密码需要通过命令 ssh-keygen-t rsa-C“yourmail@qq.com”进行创建,并且要把得到的秘钥(公钥)文件放到git服务器上,这样才有权限进行代码推送

到此就成功的把本地的代码放到了远程服务器上,这样就能让项目组成员进行写作开发了。

阅读剩余
THE END