如何从远程git服务器上拉取一个新建的git项目?

如何从远程git服务器上拉取一个新建的git项目?,第1张

创建本地仓库并同步到远程

git是非常强大的版本管理工具。接下来的时间里,我就和大家絮叨絮叨git的入门:如何在本地创建一个git仓库,并把自己的本地代码同步到远程。此教程是在mac上操作的,如果您的系统是Linux,那么操作方法相同;如果您的系统是windows,那么,只需要把git的bash窗口调出来,以后的过程也都与Linux相同。

一、首先,您需要安装git,此步就忽略了,自行安装即可。

二、假设你目前还没有创建一个工作目录,那么,先创建一个目录吧,就叫StudyGit。

三、现在的StudyGit目录还只是一个本地目录,和git没有任何关联,那么,我们怎么样才能把这个目录和git关联起来呢?只需要进入StudyGit目录,运行如下命令:

yanyaozhen@macbookpro:~/Coding/Practice/StudyGit$ git init

Initialized empty Git repository in /Users/yanyaozhen/Coding/Practice/StudyGit/git/

提示已经说明我们初始化了一个空的本地git仓库。如果你查看StudyGit下的所有文件时,会发现一个git 的隐藏文件,这个文件非常重要,版本的控制就靠它了。

四、接下来我们来看一个基本可以说是用的最频繁的一个命令:

yanyaozhen@macbookpro:~/Coding/Practice/StudyGit$ git status

五、现在让我们来创建一个文件吧。我们创建一个叫“atxt”的文本文件,并且内容如下

anyaozhen@macbookpro:~/Coding/Practice/StudyGit$ cat atxt

第一步,在服务器上创建git专用的用户

# 创建 git 用户

useradd git 

# 设置密码

passwd git 

# 创建 git 组

groupadd git

# 将 git 用户添加到 git 组

usermod -a -G git git

第二步,创建仓库目录并授权

# 创建仓库所在目录,需要使用 root 权限

sudo mkdir /opt/git

# 设置组内读写权限

sudo chmod 775 /opt/git

# 将仓库所在目录拥有组改为 git

sudo chgrp -R git /opt/git

第三步,配置免密登录 ssh

# 在客户端电脑上命令行执行,windows系统可以使用 git bash(安装git的时候自带的)

ssh-keygen -t rsa

# 一路回车,生成公钥,查看公钥内容(在当前用户目录下有个隐藏目录ssh)

cat ~/ssh/id_rsapub

将内容复制

# 将内容复制,服务器端切换到 git 用户

su git

# 回到用户home目录

cd ~

# 创建 ~/ssh 并授权,保险起见,我们以下都使用绝对路径

mkdir ~/ssh && chmod 700 ~/ssh

touch ~/ssh/authorized_keys && chmod 600 ~/ssh/authorized_keys

# 编辑 authorized_keys文件

# 将刚刚复制的公钥内容粘贴(vim 命令: i 进入编辑模式,esc回到命令模式,:wq 保存并退出)

vim ~/ssh/authorized_keys

第四步,添加新的项目到git中央仓库

# 进行你的项目所在目录

cd myproject

# git 初始化

git init

# 将当前目录及所有子目录添加到暂存区

git add

# 将暂存区的内容全部提交到本地仓库

git commit -m ‘initial commit’

# 添加到远程git仓库,名称为 myproject

git remote add origin git@gitserver:/opt/git/myprojectgit

# push本地仓库内容到远程仓库

git push origin master

搞定!!!

# 添加完成之后其他人就可以通过git clone来克隆此仓库和push改动了

git clone git@gitserver:/opt/git/myprojectgit

cd myproject

vim README

git commit -am ‘fix for the README file’

git push origin master

代码提交

代码提交一般有五个步骤:

1查看目前代码的修改状态

2查看代码修改内容

3暂存需要提交的文件

4提交已暂存的文件

5同步到服务器

1     查看目前代码的修改状态

提交代码之前,首先应该检查目前所做的修改,运行git status命令

a)        已暂存 (changes to be committed)

new file //表示新建文件

modified //表示修改文件

deleted //表示删除文件

b)       已修改 (changed but not updated)

modified //表示修改文件

deleted //表示删除文件

另外,git 给出了可能需要的操作命令,git add/rm, gitcheckout --

c)        未跟踪 (untracked files)

2     查看代码修改的内容

 git diff  <file>

比较某文件与最近提交节点的差异。

注意:如果该文件已暂存,那么应该使用git diff –cached<file>

 

 git diff <hashcode> <hashcode>  <file>

比较某文件在提交节点a,节点b的差异。

技巧:如果省略后面一个hashcode,则默认表示与上一提交节点比较。(也可以利用^运算符)

 

3     暂存需要提交的文件

如果是新建的文件

则git add  <file>

如果是修改的文件

则git add  <file>

如果是删除的文件

则 git rm  <file>

4     提交已暂存的文件

git commit

注意注释填写规范。

git commit --amend

修改最近一次提交。有时候如果提交注释书写有误或者漏提文件,可以使用此命令。

5     同步到服务器

同步到服务器前先需要将服务器代码同步到本地

命令: git pull

如果执行失败,就按照提示还原有冲突的文件,然后再次尝试同步。

命令:git checkout -- <有冲突的文件路径>

同步到服务器

命令: git push origin  <本地分支名>

如果执行失败,一般是没有将服务器代码同步到本地导致的,先执行上面的git pull命令。

Git 可以使用四种主要的协议来传输数据:本地传输,SSH 协议,Git 协议和 HTTP 协议。

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git的主要功能:

1 检查电子邮件或其他方式来检查提交状态的平均开发人员。

2 修补程序并解决冲突(您自己或要求开发人员稍后重新提交它,如果它是一个开源项目,请确定哪些修补程序可以工作,哪些不能)。

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

扩展资料:

Git的优缺点:

优点:

1 适合分布式开发,强调个人。

2 公共服务器压力和数据量不是太大。

3快速和灵活。

4任何两个开发人员之间的冲突都可以很容易地解决。

5 离线工作。

缺点:

1 数据很少(至少是中文)。

2 学习周期相对较长。

3不符合传统思维。

4 可怜的代码的机密性。一旦开发人员克隆了整个库,所有代码和版本信息都可以完全公开。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何从远程git服务器上拉取一个新建的git项目?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情