一键采集上传常见的细节问题(1.配置Git以及上传代码安装Git成功后的使用方法 )

优采云 发布时间: 2022-01-05 00:10

  一键采集上传常见的细节问题(1.配置Git以及上传代码安装Git成功后的使用方法

)

  1.在 GitHub 上构建项目

  登录GitHub后,可以在右侧中间找到一个按钮“NewRepository”。点击后,填写项目名称、描述和URL即可创建,然后会出现一个提示页面,写下类似:XXX/XXX。git的地址,这就是你项目的地址。

  2.配置Git并上传代码

  Git安装成功后,如果是windows下,选择GitBash,在命令行中完成一切。刚开始可能会有点麻烦,不过用过几次后记住这几个命令行就行了。首先首先设置 Git:

  1gitconfig--globaluser.name "你的真实姓名"

  2gitconfig--globaluser.emailyou@email.address

  然后开始最麻烦的一步。您需要将文件上传到 GitHub Git 系统。您需要一个 SSH 密钥进行身份验证。接下来,您将开始生成并提交密钥。打开 GitBash 并创建一个 SSHkey:

  1ssh-keygen-C'your@email.address'-trsa

  然后会要求您输入 SSH 密钥的存储位置。您可以不理会它,然后按 Enter 以使用默认路径。然后输入你想要的密码,就会生成SSHkey。现在您需要将此密钥提交到 GitHub。首先,打开保存密钥的位置。里面会有三个文件。找到id_rsa.pub,用文本编辑器打开,把里面的字符全部复制下来。转到 GitHub 并在右上角的工具栏中找到 AccountSettings。在此页面上有一个 SSHPublicKeys 选项卡,选择 Addanotherpublickey。您可以随意填写Title,将刚才的字符粘贴为Key,然后提交。

  完成这些任务后,您可以上传自己的代码。找到你要分享上传的代码文件夹,右键选择GitBash,或者在GitBash中输入这个文件夹。建立仓库:

  1 gitinit

  选择要添加到仓库的文件:

  1.gitadd。

  一般来说,如果要共享此文件夹中的所有代码,请添加“.”。添加后。上面的例子就是这种情况。如果你通过指定,你只需要改变“。” 到文件名。现在只需选择 To add files to the库,下面就是将它们添加到仓库:

  1gitcommit-m'Test'

  -m 后跟一个参数以指示说明。代码提交到 GitHub 后,该描述会显示在代码文件信息中,如下图所示。

  做了这么久,才开始把本地仓库上传到GitHub。下面两条命令可以解决问题:

  首先需要拉取代码才能上传成功。

  (Gitpulloriginmaster)

  继续下面的操作

  :XXX/XXX.git

  2gitpulloriginmaster

  3gitpush-uoriginmaster

  这个:XXX/XXX.git就是上面创建的项目生成的地址。现在打开你的项目网址,你会发现你的代码已经显示出来了。如果要更新代码,只需重复上述操作即可。

  如果我提交敏感信息,例如我在代码中设置的密码,忘记删除后上传怎么办?重新修改后,上传还是有历史记录,用Git删除历史记录好像很麻烦,所以把项目删了,删了再上传。删除项目需要找到GitHub右上角的admin按钮网站。进入后,右下角有个删除按钮,可以删除。

  二、Git 常用命令

  1)远程仓库相关命令

  查看仓库:$gitclonegit:///jquery/jquery.git

  查看远程仓库:$gitremote -v

  添加远程仓库:$gitremoteadd[name][url]

  删除远程仓库:$gitremoterm[name]

  修改远程仓库:$gitremoteset-url--push[name][newUrl]

  拉取远程仓库:$gitpull[remoteName][localBranchName]

  推送远程仓库:$gitpush[remoteName][localBranchName]

  *如果要将本地分支测试提交到远程仓库,并将其作为远程仓库的master分支,或者作为另一个名为test的分支,如下:

  $gitpushorigintest:master//提交本地test分支作为远程master分支

  $gitpushorigintest:test//提交本地测试分支作为远程测试分支

  2) 分支操作相关命令

  查看本地分支:$gitbranch

  查看远程分支:$gitbranch -r

  创建本地分支:$gitbranch[name]----注意新分支创建后不会自动切换到当前分支

  切换分支:$gitcheckout[name]

  创建一个新分支并立即切换到新分支:$gitcheckout-b[name]

  删除分支:$gitbranch-d[name]-----d选项只能删除已经参与合并的分支,没有合并的分支不能删除。如果要强制删除分支,可以使用 -D 选项

  合并分支:$gitmerge[name]----将名为[name]的分支与当前分支合并

  创建远程分支(将本地分支推送到远程):$gitpushorigin[name]

  删除远程分支: $gitpushorigin:heads/[name] 或 $gitpushorigin:[name]

  *创建一个空的分支:(记得在执行命令之前提交更改到你当前的分支,否则你会被迫删除它,你不会后悔)

  $gitsymbolic-refHEADrefs/heads/[名称]

  $rm.git/index

  $gitclean-fdx

  3)Version(tag)操作相关命令

  查看版本:$gittag

  创建版本:$gittag[name]

  删除版本:$gittag-d[name]

  查看远程版本:$gittag -r

  创建远程版本(将本地版本推送到远程):$gitpushorigin[name]

  删除远程版本:$gitpushorigin:refs/tags/[name]

  将远程仓库的标签合并到本地:$gitpullorigin--tags

  上传本地标签到远程仓库:$gitpushorigin--tags

  创建带注释的标签:$gittag-a[name]-m'yourMessage'

  4)子模块相关操作命令

  添加子模块:$gitsubmoduleadd[url][path]

  如:$gitsubmoduleaddgit:///soberh/ui-libs.gitsrc/main/webapp/ui-libs

  初始化子模块:$gitsubmoduleinit----第一次检出仓库时只运行一次

  更新子模块:$gitsubmoduleupdate----每次更新或切换分支时都需要运行

  删除子模块:(分四步走)

  1)$gitrm--缓存[路径]

  2)编辑“.gitmodules”文件,删除子模块的相关配置节点

  3)编辑“.git/config”文件,删除子模块的相关配置节点

  4) 手动删除子模块剩余目录

  5)忽略一些文件和文件夹而不提交

  在仓库的根目录下创建一个名为“.gitignore”的文件,写下你不需要的文件夹名或文件,每个元素占一行,如

  目标

  垃圾桶

  *。D b

  三、Git 命令详解

  现在我们有了本地和远程存储库,让我们尝试使用 Git 的基本命令:

  gitpull:将其他仓库(远程或本地)的代码更新到本地,例如:'gitpulloriginmaster'就是将源仓库的代码更新到本地master master分支。这个功能类似于SVN更新

  gitadd:是将当前更改或新文件添加到 Git 索引中。添加到 Git 索引意味着它们被记录在版本历史中。这也是提交前需要执行的一个步骤,比如'gitaddapp/model/user.rb' 会将app/model/user.rb文件添加到Git索引中,类似于SVN的添加

  gitrm:从当前工作区和索引中删除文件,如'gitrmapp/model/user.rb',这个功能类似于SVN的rm,del

  gitcommit:提交当前工作区的修改内容,类似于SVN的commit命令,如'gitcommit-mstory#3,addusermodel'。提交时,必须使用-m 输入一条提交信息。这个功能类似于SVN的commit

  gitpush:将本地提交代码更新到远程仓库,例如'gitpushorigin'将本地代码更新到名为orgin的远程仓库

  gitlog:查看历史日志,这个功能类似于SVN日志

  gitrevert:要恢复修改的版本,必须提供具体的Git版本号,例如'gitrevertbbaf6fb5060b4875b18ff9ff637ce118256d6f20',Git版本号是生成的hash值

  几乎所有上述命令对于每个版本控制工具都是通用的。让我们尝试一些 Git 独有的命令:

  gitbranch:添加、删除、检查分支等操作,例如'gitbranchnew_branch'会从当前工作版本创建一个名为new_branch的新分支,'gitbranch-Dnew_branch'会强行删除名为new_branch的分支,'gitbranch'会列出所有本地分支机构

  gitcheckout:Git的checkout有两个作用,一个是在不同的分支之间切换,比如'gitcheckoutnew_branch'会切换到new_branch的分支;另一个功能是恢复代码的功能,比如'gitcheckoutapp/model/user.rb'会从上次提交的版本更新user.rb文件,所有未提交的内容都会回滚

  gitrebase:用下面两张图说明会更清楚。rebase命令执行后,分支点实际上是从C移到G,这样分支就有了从C到G的功能

  

  gitreset:将当前工作目录回滚到指定的版本号。假设我们有五个来自 AG 的提交,如下图所示。C的版本号是bbaf6fb5060b4875b18ff9ff637ce118256d6f20(可以通过gitlog获取),我们执行'gitresetbbaf6fb5060b4875b18ff9f63720ce118256d6fb8756f20b6fb87562888858888888888888888888858200800000 AC提交的只有三个版本

  

  gitstash:将当前未提交的工作存储在 Git 工作栈中,并在适当的时候应用回来。这里简单介绍一下这个命令的用法,后面的tips部分会重点介绍

  gitconfig:使用此命令添加和更改 Git 的各种设置。例如,'gitconfigbranch.master.remoteorigin' 将 master 的远程存储库设置为称为 origin 存储库的别名。此命令将用于在后面的提示中个性化设置。你的 Git,为你打造独一无二的 Git

  gittag:可以标记特定的版本,这样就不需要记住复杂的版本号哈希值。比如你可以用'gittagrevert_versionbbaf6fb5060b4875b18ff9ff637ce118256d6f20'来标记你恢复的版本,那么你以后想查看版本的时候,可以用revert_version标签名代替hash值

  Git之所以能够提供便捷的本地分支等特性,与其文件存储机制有关。Git在存储版本控制信息时,使用了一套自己定义的文件系统存储机制。代码根目录下有一个.git文件夹,目录结构如下:

  

  有几个重要的文件和目录需要说明: HEAD 文件存储了根节点的信息。实际上,目录结构代表了一个树状结构。Git 使用这种树结构来存储版本信息,所以 HEAD 代表根;refs 目录存放你在当前版本控制目录下的各种引用(引用是指你本地和远程使用的每个树分支的信息)。它有四个子目录:heads、remotes、stash、tags,里面存放了成对的对于不同根、远程仓库、Git stacks、tags的四个引用,可以使用命令'gitshow-ref'查看引用信息更清楚; 日志目录根据不同的引用存储日志信息。因此,Git 只需要这个 . 代码根目录下的git目录记录完整的版本控制信息,而不是像SVN那样在根目录和子目录下有.svn目录。那么我们来看看Git和SVN的区别。

  一些可能遇到的问题解决:

如果输入$ git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git

提示出错信息:fatal: remote origin already exists.

解决办法如下:

1、先输入$ git remote rm origin

2、再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!

3、如果输入$ git remote rm origin 还是报错的话,error: Could not remove config section ‘remote.origin’. 我们需要修改gitconfig文件的内容

4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc

5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行删掉就好了!

如果输入$ ssh -T git@github.com

出现错误提示:Permission denied (publickey).因为新生成的key不能加入ssh就会导致连接不上github。

解决办法如下:

1、先输入$ ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。

2、如果还是不行的话,输入ssh-add ~/.ssh/id_key 命令后出现报错Could not open a connection to your authentication agent.解决方法是key用Git Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。

3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。

如果输入$ git push origin master

提示出错信息:error:failed to push som refs to …….

解决办法如下:

1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来

2、再输入$ git push origin master

3、如果出现报错 fatal: Couldn’t find remote ref master或者fatal: ‘origin’ does not appear to be a git repository以及fatal: Could not read from remote repository.

4、则需要重新输入$ git remote add origingit@github.com:djqiang/gitdemo.git

使用git在本地创建一个项目的过程

$ makdir ~/hello-world    //创建一个项目hello-world

$ cd ~/hello-world       //打开这个项目

$ git init             //初始化

$ touch README

$ git add README        //更新README文件

$ git commit -m ‘first commit’     //提交更新,并注释信息“first commit”

$ git remote add origin git@github.com:defnngj/hello-world.git     //连接远程github项目

$ git push -u origin master     //将本地项目更新到github项目上去

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线