如何在mac系统下将github上的代码拉取到我自己的服务器上

如何在mac系统下将github上的代码拉取到我自己的服务器上,第1张

Github开源代码库以及版本控制系统,可以托管各种git库,并提供web访问界面。很多朋友喜欢喜欢将个人Blog或小型项目托管到github,这样既方便又简单。
下面介绍如何将本地文件上传到github上,以window系统客户端为例。
工具/原料
Git
gitbug
示例文件:blog
方法/步骤
1
在windows系统客户端安装git工具。
注:如何安装git工具在此不做介绍,如需了解可网上搜索安装介绍。
2
在“本地文件”中添加“。git文件”,用于git管理。
进入本地文件夹,右击鼠标-单击Git Init Here-生成。git文件夹。
3
在github创建仓库用于存储管理本地文件,示例:Blog。
点击账号前的加号(Create New)--New repository,根据引导创建一个Blog仓库。
4
远程添加github上的Blog仓库。
1)进入本地文件夹下-右击鼠标-Git Gui-远端(remote)-Add…
5
2)获取github中Blog仓库的地址。
6
3) 在Add Remote窗口中填写名字、Location。
名字:Blog
Location:粘贴刚刚复制的Blog仓库路径
最后单击“Add”。
7
将本地文件内容即“已缓存的改动”,提交git管理的master分支上。
8
将本地文件上传到github上去。
单击Git Gui界面“上传”--“上传”窗口随意勾选一个或多个传输选项--点击“上传”--上传Blog过程中需要输入github的登录账号和密码。
9
在github上查看本地文件Blog项目是否上传成功。
END
注意事项
git文件夹是隐藏的项目,在“查看”中允许隐藏项目显示才可以看见。
“上传”窗口中必须勾选一个或多个传输选项,传输选项不能为空否则上传会失败。

下载:访问网站下载最新版的git版本。

安装:点击”next“,转到步骤3。

安装地址:可以更改也可以直接使用默认的。

将Additional icons中的On the Desktop勾上;

将Windows Explorer integration选项中的“Git Bash here”和“Git GUI here”勾上。

在“Adjusting your PATH environment”选项中,选择默认即可。

在Choosing >

在“Configuring the line ending conversions”选项中,第一个选项:如果是跨平台项目,在windows系统安装,选择;第二个选项:如果是跨平台项目,在Unix系统安装,选择;第三个选项:非跨平台项目,选择。

在Configuring the terminal emulator to use with Git Bash中选择默认。

在Configuring extra options中选择默认,然后点击“Install”开始安装。如果之前安装过旧版本,会先卸载然后再安装新版本。

安装完成后点击“finish”即可。

windows系统下git的安装
在Linux系统下,可以直接在命令窗口安装和使用Git。但是,在windows系统下,想要达到同样的效果,可以安装git,使用git bash到达效果。具体安装步骤如下:
第一步:官网上下载git
网址:>1查看Linux系统服务器系统版本
ifconfig
2在服务器上安装git及做些 *** 作
- 执行命令
`
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
`
- 同时下载git-1822targz文件,然后将其`mv` 到`/usr/local/src`目录。[git-1822targz安装包下载地址][1]
```
cd /usr/local/src
sudo tar -zvxf git-1822targz
cd git-1822
sudo make prefix=/usr/local/git all
sudo make prefix=/usr/local/git install
```
- 增加软连接
```
sudo ln -s /usr/local/git/bin/ /usr/bin/
git --version #如果能显示版本号,即表示成功`
```
3在服务器安装gitosis
```
sudo yum install python python-setuptools
cd /usr/local/src
git clone git://githubcom/res0nat0r/gitosisgit
cd gitosis
python setuppy install
#显示Finished processing dependencies for gitosis==02即表示成功
```
4在开发机上,生产密钥并上传到服务器上
```
ssh-keygen -t rsa #一路回车,不需要设置密码
#上传公钥到服务器(默认SSH端口22)
scp ~/ssh/id_rsapub tailin@192168100202:/tmp
```
或编辑`/etc/hosts`文件,在`/etc/hosts`文件里添加如下文本:
```
# local git server
192168100202 zgit
```
然后再上传自己的公钥到服务器
```
scp ~/ssh/id_rsapub tailin@zgit:/tmp/
# 登录到git服务器
ls /tmp/id_rsapub #显示已经上传的密钥
```
5服务器上生成git用户,使用git用户并初始化`gitosis`
```
# 创建git版本管理用户 git
sudo useradd -c 'git version manage' -m -d /home/git -s bin/bash git
# 更改git用户的密码
sudo passwd git
# su 到git用户
su - git
gitosis-init < /tmp/id_rsapub
#显示以下信息即表示成功
#Initialized empty Git repository in /home/git/repositories/gitosis-admingit/
#Reinitialized existing Git repository in /home/git/repositories/gitosis-admingit/
#删除密钥
rm -rf /tmp/id_rsapub
```
6在个人开发机上导出项目管理
```
mkdir -p /repo
cd /repo
git clone git@zgit:gitosis-admingit
```
7在个人开发机增加及设置管理项目
```
cd /repo/gitosis-admin
# 查看git服务器已经上传密钥
ls keydir
cat keydir/ltl@jackliu-ThinkPadpub
#ltl@jackliu-ThinkPadpub为已经上传的开发机生成的公密
#显示密钥 最后的字符串为 密钥用户名 这里为 ltl@jackliu-ThinkPad
vim gitosisconf
#在文件尾增加以下内容
[group test-git] # 具有写权限的组名称
writable = test-git # 该组可写的项目名称
members = ltl@jackliu-ThinkPad guangyunni@yeepaycom #该组的成员(密钥用户名) 多个用户协同开发时,以空格分隔
# 如果要增加只读的组 参考如下
# [group test-git-readnoly] # 具有都权限的组名称
# readonly = test-git # 该组只读的项目名称
# members = ltl@jackliu-ThinkPad # 该组的成员
#提交修改
git add
git commit -a -m "add test-git repo"
git push
```
8在个人开发机上初始,增加及使用项目test-git
```
cd ~/repo
mkdir test-git
cd test-git
git init
touch readme
git add
git commit -a -m "init test-git"
git remote add origin git@zgit:test-gitgit
git push origin master
```
9增加协同开发者的公钥key到git服务器

- 执行`cd repo/gitosis-admin/keydir`切换目录

- 把协同开发者的id_rsapub 文件里的数据 拷贝到 对应的开发者的`密钥用户名pub`文件。如把密钥用户名 guangyunni@yeepaycom 的 id_rsapub 文件中文本 粘贴到 guangyunni@yeepaycompub 文件里,并保存
- 然后将添加数据后的目录更新到git服务器

```

目前最火的版本控制软件就是Git了吧?你要是还用SVN或者CVS什么的都不好意思在圈里打招呼!前天我就遇到这种情况了,QQ上和老同学聊起自己用SVN来管理程序版本,好麻烦,当场就惨遭鄙视---“你还用SVN啊?你Out了!我们都用Git了!”好吧为了不被人鄙视,也为了可以鄙视别人,我终于也开始学Git了!
用了几天之后的感觉就是,确实好用啊!难道大家都来追捧!linus继linux之后又造福了人类一把!就是这个东西因为模式和之前的版本控制软件略有不同,所以入门上稍许有点难度,好吧不废话了,讲讲自己的心得体会吧!
首先不得不讲一下,需要分清git和github这是两个不同的东西,类似于linux和redhat,前者是开源的项目,后者则是利用这个开源的项目提供服务的服务商。github是一个使用git来托管代码的网站,有两种托管方式,一种是公开的,任何人都可以下载和上传代码,另一种是私人的只有建立者制定的人才可以下载或上传代码,私人的只有交钱才能用。
国内类似github的服务现在也冒出来不少,我用的是git@OSC ,这个的好处是无论哪种代码都是免费的,当然以后会怎样就不清楚了,目前使用中发现github的速度明显不如git@OSC ,看来前者还是不接地气啊。
因为这两个比较有代表性,后面我的使用基本就以这两个为例了。
*** 作系统自然是windows,用linux开发的都是大牛也用不着我来教,我的是win7,但winxp应该区别不大。
首先,你应该在你的电脑上安装msysgit和tortoisegit,前者是git的windows版,有了他就可以在你的电脑上创建工程,克隆工程什么的,后者则是大名鼎鼎的小乌龟,一个图形化的Git *** 作程序,用过tortoiseSVN的应该不会陌生,理论上只有前者也是完全可以使用git的,不过面对那赤裸裸的字符界面能受的了没几个吧。
这两个软件都很好安装就不多说了,假设你已经装完了,我的msysgit是184,tortoisegit是186,如果你们用的是其他版本的差别应该也不大。tortoisegit的早期版本应该在用户设置上略有不同。
第一部分 在本地使用git(类似SVN之中自己的电脑就是服务器)
首先,讲讲怎么在自己的电脑上创建和使用git库,没错,你可以将比较安全的磁盘当做之前SVN的服务器,把库(git叫repository)放在这里,然后把另一个磁盘当做工作区。
第一步,创建repository:
先进到那个你要当库的磁盘目录下,点鼠标右键,会出现这样一个东西:
其中关于git的有五项,前两项Git GUI Here和Git Bash Here不要理会,就是调用那两个程序而已。Git Clone和TortoiseGit我们后面再说,既然是创建repository那就选择Git Create repository here吧,这时又会出现这么个东西:
简单的说把Make it Bare勾上就表示这是一个单纯的repository,写代码的工作区放在另一个地方,我们既然是要创建一个库自然是要勾上了,然后点ok,会在目录下面出现很多稀奇古怪的文件和目录,不要在意,那都是git需要的东西。
这样一个库就完成了。
第二步,创建工作区:
我们转到要做工作区的那个磁盘的目录下,然后右键选择Git Clone,出现的是这样一个东西:
URL选择之前我们创建的库的目录,directory选择工作区,也就是你要放代码的目录。其他的不用管,ok之后会出现一个git目录,说明我们建立工作区成功了。
第三步 Add和Commit、push文件
我们在工作区的目录创建一个文件吧,比如testc
右键点击这个文件,选TortoiseGit:
Add就是把这个文件加入到TortoiseGit的关注列表之中,不进行这一步的话,这个文件哪怕你改出花来,小乌龟也是不会管的,而你Add之后,小乌龟就会随时关注这个文件是否修改。
在目录的空白处点击右键选择TortoiseGit,也可以批量Add文件,总之玩法很多大家可以自行研究。
选择Add之后会出现一个框,点击ok就可以,然后会出现这样一个框表示Add成功,先别急着点ok,我们还要commit呢:
同时testc的图标也变了,出来个加号,表示这个文件add成功了。
这里我们要花时间讲一下,git下文件的几种状态:
1就是没有Add的文件,这种文件在工作区的目录下就是普通的文件,小乌龟不关注他。
2就是Add成功的文件,用加号表示,但这个文件其实并没有保存到git的系统里,无论你怎样修改,也只是在工作区的目录下改变,git的系统里不会有这个文件的记录。
3是commit的文件,这个文件会保存在工作区下的git目录里(应该是吧)也就是你的本地的git系统里面,git会比较你commit前后是否修改,如果有修改会用红叉表示,否则就是一个绿色的对号。
4是push到repository之中的文件,repository可以是你本机建立的,也可以是类似github和git@OSC这样的服务器。
好吧我们现在只是add了,这肯定不行,必须要commit才算是利用了git啊,于是我们在刚刚那个对话框点击commit,这时候会要你输入一些提示,不写任何东西是无法选择ok的,好吧我们写上01表示这个版本,于是小乌龟允许你点ok了:
commit之后就是这样子了,这时候我们可以继续push也可以点ok关闭,以后再push:
commit成功之后文件是这个样子滴:
push的 *** 作和commit很类似,因为我们这个repository是建立在本机的另一个磁盘下的,所以push的过程之中不需要输入密码什么的,直接搞定,没什么可讲的。
只需要注意commit的文件是保存在工作区的目录的,而push成功的文件是保存在repository里的。
第二部分 如何利用GitHub和Git@OSC
首先,需要你有GitHub和Git@OSC的账户。创建账户的过程不多说。
然后在自己的账户下创建Repository,过程当然也是在网页上点几下,填点文字就行了,至于license和readmemd之类的东西,默认放着就好。这个创建repository的过程其实就是之前我们右键选择create repository的过程,只不过之前我们是在本机上创建,而这里是在服务器上而已,本质没啥区别。
至于项目的类型,我们先讲public,之后有时间的话我再讲private(话说github的private是要收钱的,所以我也没试过)。
创建了之后那就是下载和上传自己的代码文件了。
这就和第一部分的过程很类似了,我们进到作为工作区的目录下面,右键选择git clone:
会出现这么个东西,和之前的很类似:
区别就是这里的url我们不能像第一部分那样填写本机的目录了,而是要填写github或者Git@OSC提供给你的url,github是在每个项目的右下角这里获取:
git@OSC则是项目主页的正中间:
复制,然后粘贴到小乌龟的那个文本框里就可以,然后ok,因为我们说的是public项目,所以没有密码之类的问题,很顺利的就会clone成功。
然后我们新建一个文件,add,commit的过程都和第一部分完全相同,注意commit之后的文件也依然保存在本地,接下来我们要做的就是把commit的文件push到服务器上, *** 作方式是在工作区的目录空白处点击右键-》tortoiseGit-》push:
因为是push到服务器上,所以会出现这样的对话框,填写自己的账户密码即可:
之后去github和git@osc上自己的项目主页上看看吧,你的文件已经push到服务器上了!
github和git@osc使用起来基本上很简单,网上有些文章写的是需要puttygen生成公钥私钥之类的,其实完全用不着,作为public项目简单的用户密码方式就可以了。那种方式以后我有时间再写个第三部分吧。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12578313.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存