Tag Archives: hosting

What Microsoft’s GitHub Deal Promises to Programmers | Business


By Jack M. Germain

Jun 11, 2018 11:00 AM PT

Microsoft sent tremors through the open source world last week, when it announced that it would acquire the popular developer platform
GitHub for US$7.5 billion in company stock.

Microsoft will acquire GitHub subject to closing conditions and completion of regulatory review. The acquisition is expected to close by the end of the calendar year.

GitHub, one of the world’s largest computer code repositories, is home to more than 28 million developers for collaboration and distribution of projects. In recent years, Microsoft has stepped up its activity through several partnerships with GitHub.

The two companies will empower developers to achieve more at every stage of the development lifecycle, accelerate enterprise use of GitHub, and bring Microsoft’s developer tools and services to new audiences, Microsoft CEO Satya Nadella said during a global phone conference.

“GitHub is the destination for developers to learn, share and work together to create software. It’s a destination for Microsoft too. We are the most active organization on GitHub, with more than 2 million commits or updates made to projects,” Nadella said.

GitHub will remain independent, he promised. Once the acquisition closes, Nat Friedman will become GitHub’s CEO and will report to Microsoft Cloud and AI Group Executive Vice President Scott Guthrie. Current GitHub CEO and cofounder Chris Wanstrath will be a technical fellow at Microsoft and also will report to Wanstrath.

“When it comes to our commitment to open source, judge us by the actions we have taken in the recent past, our actions today and in the future,” said Nadella at last week’s conference. “Microsoft is all-in on open source.”

Why GitHub?

Microsoft has been a developer-focused company from its start in creating the platforms and tools it offers today, noted Nadella. The company’s core mission is building technology so that others can build technology.

Microsoft sees three clear opportunities ahead with the GitHub acquisition. First, it will empower developers at every stage of the development lifecycle — from ideation to collaboration to deployment to the cloud, Nadella said.

“Going forward, GitHub will remain an open platform, which any developer can plug into and extend,” he promised. “Developers will continue to be able to use the programming languages, tools and operating systems of their choice for their projects and will still be able to deploy their code on any cloud and any device.”

Second, Microsoft will accelerate enterprise developers’ use of GitHub with direct sales and partner channels, as well as access to Microsoft’s global cloud infrastructure and services.

Third, Microsoft’s developer tools and services will be available to new audiences.

Microsoft recognizes its responsibility with this agreement and is committed to being stewards of the GitHub community, which will “retain its developer-first ethos, operate independently, and remain an open platform,” Nadella said.

Open Source Enthusiasm

While many open source insiders responded to Microsoft’s acquisition of GitHub with high praise, others expressed concerns about unexpected consequences for open source independence.

The acquisition will give Microsoft deeper penetration into the developer mindset, said Nakul Aggarwal, CTO of
BrowserStack.

“I hope this acquisition creates a real win-win situation for all three parties — developers, Github and Microsoft — in this order,” he told LinuxInsider, “but the acquisition will not create that positive impact on the developer community.”

Microsoft as a brand needs to innovate within and solve a genuine developer problem to receive empathy and love from developers, Aggarwal explained. Only then will it reflect that developers really care.

“Currently it looks like a business problem to solve and an acquisition as a way to do it,” he pointed out. “Microsoft gains a deeper Integration with all their developer tools — Visual Studio / Xamarin / Azure, etc. — and more penetration into open source and hence can be known as developer-friendly.”

Business Over Religion

Microsoft’s move to acquire GitHub is a smart business decision, said Jyoti Bansal, CEO of
Big Labs.

It speaks to the massive strategic value of developer platforms and solutions, he told LinuxInsider.

“Satya Nadella has so far done a great job dropping the Windows religion to embrace the reality of the iOS, Android, Linux and the multicloud world, which he will hopefully continue with the GitHub community,” Bansal said.

“By putting [former Xamarin CEO] Nat Friedman in place as a technical CEO, Microsoft is sending a clear message that they’re committed to GitHub and the larger developer ecosystem,” he noted.

The acquisition is a big win for Microsoft, according to Jack E. Gold, principal analyst at J.Gold Associates.

It puts the company ahead in the Web hosting market against fierce competitors Amazon Web Services and Google, he told LinuxInsider.

It creates an incentive for many more app developers to host on Azure, especially in the commercial space where MSFT recently has been less competitive than in the enterprise space.

“That is a win-win for Microsoft, and it doesn’t hurt the developer community either, as they will gain some additional incentives, albeit MSFT-centric, Gold said.

Shifting Focus

GitHub and Microsoft make a perfect fit, as both strive to serve developers of all kinds, said Stefano Maffulli, community director at
Scality.

“I’m surprised that this hasn’t happened before — Microsoft has clearly shifted its focus to developers many years ago,” he told LinuxInsider. “They’ve always claimed to be about developers, and today they put more money where their mouth is. I’m glad the corporation made such a visible U-turn.”

The issue of GitHub’s real commitment to open source also may come into play, he suggested. GitHub has not always been synonymous with open source.

“GitHub has never been open source. Not all code hosted on GitHub is open source at all,” Maffulli said.

Despite its popularity with software developers, GitHub initially did not do enough to educate them about the importance of copyright and licenses for open source, he suggested.

However, both GitHub and Microsoft have greatly improved, Maffulli added.

“They are still proprietary software companies. But at least they now understand, respect and promote open source ideas and practices,” Maffulli said.

Open Source Marketplace

GitHub’s acquisition is good news for open source and perhaps the single most significant validation conceivable that open source *is* the mainstream resource for software development, according to Patrick Carey, director of product strategy at Black Duck by Synopsys.

“Microsoft has always been focused on the needs of the developer, and this acquisition is consistent with that focus,” he told LinuxInsider. “It may seem remarkable that Microsoft, once considered the archenemy of both Linux and open source, would acquire GitHub — perhaps the most prominent piece of open source infrastructure today. But it shows just how much Satya Nadella has changed the game at Microsoft.”

The acquisition makes possible better focus on open source security, Carey added. Microsoft likely will make further strides to embrace open source by providing community developers with new tools to help improve the quality and security of their projects.

Potential for Business Trojan Horse

Microsoft’s acquisition of GitHub makes perfect sense, given the company’s direction under Satya Nadella, said Blair Hanley Frank, principal analyst at
Information Services Group. GitHub is central to the modern developer workflow.

“This acquisition brings Microsoft deeper into that conversation,” he told LinuxInsider. “It shows the company’s embrace of open source and its willingness to evolve to meet the changing needs of its customer base.”

The biggest question is how Microsoft plans to integrate GitHub Enterprise with its other developer offerings, including Visual Studio Team Services. Microsoft does not appear to be integrating the GitHub Marketplace into the Azure Marketplace, Frank said.

Rather, the company sees the GitHub marketplace as a place for it to promote its own software and services to developers. It is important to avoid merging the two at this point, he cautioned, since GitHub’s independence — perceived or otherwise — is key to maintaining goodwill with developers.

“Overall, this is a boost to Azure all-up, since it builds stronger ties between where developers go to build their code and where they can deploy that code in the cloud,” Frank said.

The Edge Factor

Microsoft’s GitHub acquisition is the clearest signal yet of the importance of the cloud-native edge, according to Said Ouissal, CEO of
Zededa.

As cloud developers shift their focus toward taking advantage of Internet of Things data in real time at the “intelligent edge,” they need an on-ramp to the edge — a platform that allows the embedded systems of the world operate like the cloud, he told LinuxInsider.

“Embedded systems today were not even designed for network or optimized for Internet connectivity. They were built for a time when embedded computers were simply ‘set it and forget it’ for years at a time,” Quisssal pointed out.

The developer workflows that Microsoft wants to see drive and influence business processes could spell the end of embedded computing as we know it, he cautioned, if we want to enable those 28 million developers to thrive at the edge.


Jack M. Germain has been an ECT News Network reporter since 2003. His main areas of focus are enterprise IT, Linux and open source technologies. He has written numerous reviews of Linux distros and other open source software.
Email Jack.





Source link

Suse Linux Enterprise 15 Bridges Traditional, Software-Defined Systems | Enterprise


By Jack M. Germain

Jun 26, 2018 10:53 AM PT

Suse on Monday launched Suse Linux Enterprise 15, its latest flagship operating platform. SLE 15 bridges traditional infrastructure technologies with next-generation software-defined infrastructure, the company said. It will be fully available to existing customers for download or upgrade on July 16.

Suse Linux Enterprise 15 Bridges Traditional, Software-Defined Systems

The company also released enhancements to Suse Manager 3.2, an open source IT infrastructure management solution for Linux, with improvements focused on lowering costs, improving DevOps efficiency, and easily managing large, complex deployments across IoT, cloud and container infrastructures.

Suse Manager helps users meet management challenges created by technology advancements such as software-defined infrastructure, cloud computing and containers, according to the company.

The SLE 15 product family includes seven individual offerings that integrate or supplement a variety of features and functionality. SLE 15 desktop is a standalone product that users can enhance according to their needs as they occur.

SUSE Linux Enterprise 15 - IT Transformation

“The two common elements in SLE 15 are the common code base and modular structure. They can touch every other product,” said Raj Meel, global product and solution marketing manager at Suse.

Evolving Needs

Enterprise users typically have to contend with a mix of IT infrastructures. Architecturally, they have a quagmire to navigate, Meel told LinuxInsider. They may have started out with a monolithic IT structure and then moved into tiered architecture, only to currently find themselves in microservices.

That is where Suse’s multimodal IT concept comes into play. SLE 15 provides a series of bridges for enterprise users to use to bring mixed IT structures into the public cloud without changing what they have.

The SLE 15 operating system addresses the increasing adoption of hybrid, software-defined computing environments spanning physical servers/storage, virtualization, cloud services, containerized workloads, edge computing (IoT) and high-performance computing, noted Charles King, principal analyst at Pund-IT.

“Practically speaking, operating systems like Suse’s flagship Linux are merely one part of increasingly complicated, ever larger enterprise IT infrastructures,” he told LinuxInsider. “As a result, with these new solutions Suse is letting customers know it has their backs wherever their IT resources and workloads reside.”

The new OS includes new function and support features focused on lowering costs, improving management of increasingly complex IT environments, and enhancing DevOps engagements and efficiency — all top-of-mind concerns for Suse customers, especially mid-sized and larger enterprises, King pointed out.

What Suse Released

Suse Linux Enterprise 15 is a modern, modular operating system that helps simplify multimodal IT. SLE 15 makes traditional IT infrastructure more efficient and provides an engaging platform for developers. As a result, customers can easily deploy and transition business-critical workloads across on-premises and public cloud environments, according to Suse.

“Organizations today face increasing pressure to become more agile and economically efficient in order to grow, compete and survive,” said Suse CTO Thomas Di Giacomo. “They must leverage digital assets, information, and an explosion of new infrastructure software innovation to fuel and enable their digital transformation.”

Emerging infrastructure technologies built on open source and Linux create new levels of freedom and flexibility, and Suse Linux Enterprise 15 provides the foundation for this freedom and flexibility, said Di Giacomo. It enables each customer to operate effectively, regardless of their particular IT requirements.

The SLE 15 platform includes the following:

  • SLE for Intel/AMD x86-64, POWER, ARM, z Systems and LinuxONE
  • SLE Server for SAP Applications
  • SLE High Performance Computing
  • SLE High Availability Extension (includes Geo Clustering)
  • SLE Live Patching
  • SLE Desktop
  • SLE Workstation Extension

Suse 15 Primer

The latest OS is designed to help organizations transform their enterprise systems to embrace modern and agile technologies. Multiple infrastructures for different workloads and applications are needed, which often means integrating cloud-based platforms into enterprise systems, merging containerized development with traditional development, or combining legacy applications with microservices, according to Suse.

The platform uses a common code base to ensure application mobility across multimodal IT environments. Whether customers build microservices using Suse’s Containers as a Service (CaaS) Platform, deploy the latest SAP applications on Suse Linux Enterprise Server, or use Suse OpenStack Cloud to manage system resources, the common code base ensures consistency and helps them move application workloads transparently across traditional and software-defined infrastructure.

In addition, through Suse Linux Enterprise bring-your-own-subscription programs, customers easily can transition to or leverage a public cloud, such as Amazon Web Services, Google Cloud Platform or Microsoft Azure.

Operating systems remain a foundational building block for modern infrastructure. Linux has become a preferred platform for the cloud and for modern cloud-native application development, according to IDC. Linux also has gained stature as a preferred development platform for most independent software vendors (ISVs).

Linux is used widely for hosting traditional and next-generation applications across bare-metal, virtual and container-based delivery systems. Suse Linux Enterprise comes out at the top for SAP applications, mainframes, high-performance computing, and other key Linux enterprise-centric use cases, according to IDC.

SLE 15’s Modular Plus architecture addresses new challenges customers face when introducing innovations to make existing traditional IT infrastructures more efficient. Everything in SLE 15 is a module, so Suse can issue updates and patches more frequently. The modular approach lets customers install only the features they need, which simplifies planning and reduces risk.

How Multimodality Works

Traditional infrastructure, software-defined infrastructure, and application-oriented architectures coexist in a multimodal IT environment. Bridges are needed to move workloads from on-premises to the cloud, and to leverage data centers for container applications, said Suse’s Meel. SLE 15 facilitates a mixed IT Infrastructure where servers reside within a traditional infrastructure and applications run on a software-defined infrastructure.

For example, with a traditional infrastructure, enterprises run applications like SAP, SQL and Oracle. With a software-defined infrastructure, users run containers and applications. SLE 15 allows the creation of bridges across mixed IT systems through a process called “application mobility.”

SLE 15 sits in the middle, with container apps to bridge traditional platforms such as virtual machines, and physical servers to integrate with the software-defined infrastructure of the public cloud.

Multimodal IT provides a mix of deployment scenarios spanning traditional and software-defined infrastructures. Storage devices, virtual machines and physical servers navigate to the OpenStack cloud and then use SLE 15 as a bridge to the public cloud.

SUSE Linux Enterprise 15 - Multimodal IT Deployment Scenarios

Application delivery is available via container management (Suse Container as a Service Platform) and Platform as a Service (Suse Cloud Application Platform).

Software-defined infrastructure can be driven by private cloud / IaaS, Suse OpenStack Cloud, compute (container and virtual machine), storage (Suse Enterprise Storage) and networking (SDN and NFV), operating system (Suse Linux Enterprise Server) and physical infrastructure (Server, Switches and Storage).

Bridging the Gap

From the customer perspective, what customers really want is keep their existing structure and maximize it the best that they can, said Meel. Bridging is the key to providing this type of solution.

“The alternative for enterprises is to modernize their IT completely. They may want to connect containers to your data center. Or they move their applications from on-premises to cloud. That is one of the largest use cases we are seeing,” he said.

Those are the bridges that customers are looking for. How can they get there easily? Depending on what they have and where they want to go, they may need one or two or three bridges. Suse even has a bring-your-own-cloud subscription bridge, added Meel.

“We call it a ‘multimodel OS,’ because the OS is not for one specific purpose. Instead, it is solving different use cases for different people. You can start with a minimally viable system and then add what you need. You can build your own platform. You can add modules as you want,” he said.

SUSE Linux Enterprise 15 - Building Bridges with Multimodal OS

Most of Suse’s customers already are at that point. They have a huge IT structure that they manage.

“They do not want to change it too much. That is where the modular architecture really can help them,” said Meel.

Derived Benefits

The latest SLE 15 releases offer a trilogy of benefits to those making the upgrade: Suse’s platform is developer-friendly; it provides the latest in high-performance computing; and it provides key integration with SAP applications.

SLE 15 accelerates an enterprise’s transition from a free developer subscription or community Linux (openSUSE Leap) setup to a production deployment of fully supported enterprise Linux. It is designed for integration into commonly used modern development methodologies like DevOps and CI/CD. It also provides users with a faster time-to-market cycle by leveraging open source technology, methods and expertise.

Businesses have been recognizing that a high-performance computing infrastructure is vital to supporting the advanced analytics and simulated modeling applications of tomorrow.

Suse Linux Enterprise HPC 15 addresses this growing market with a comprehensive set of supported tools specifically designed for the parallel computing environment, including workload and cluster management. HPC 15 supports x86-64 and Arm-based HPC clusters on the full range of hardware used today for HPC — from low-cost to high-end supercomputers.

Suse Linux Enterprise Server 15 for SAP Applications reduces downtime, optimizes performance, and makes deploying and managing SAP systems easier. New capabilities include non-volatile dual in-line memory module (NVDIMM) support for diskless databases, and enhanced high-availability features for IBM Power Systems.

Workload Memory Protection is a new feature that provides an open source-based, more-scalable solution to sustain high performance levels for SAP applications.

“Suse keeps on churning out great open source software that customers want to buy,” said Stefano Maffulli, community director at
Scality

“They may not catch the same spotlight as the other Linux distributions, but they are still there, plowing through release after release with the same German solidity of the early days,” he told LinuxInsider.

Suse is one of the main contributors to lots of open source projects, Maffulli added. “Just look at their
history of contributions to OpenStack, for example — and they package it professionally.”

More Infrastructure Management

Suse Manager 3.2 lowers costs and simplifies deployment while easily scaling larger environments for public cloud and Kubernetes infrastructures. It also helps customers improve DevOps efficiency and meet compliance requirements with a single tool that manages and maintains everything from edge devices to Kubernetes environments.

In addition, Suse Manager makes it easy to manage large, complex deployments with new extended forms-based user interface capabilities.

Additional enhancements in SLE 15 include support for nonstop IT with the integration of geo clustering within high availability extension. This lets users easily connect data centers across the world while providing a resilient and highly available infrastructure.


Jack M. Germain has been an ECT News Network reporter since 2003. His main areas of focus are enterprise IT, Linux and open source technologies. He has written numerous reviews of Linux distros and other open source software.
Email Jack.





Source link

How to Install and Use Flatpak on Linux | Linux.com


The landscape of applications is quickly changing. Many platforms are migrating to containerized applications… and with good cause. An application wrapped in a bundled container is easier to install, includes all the necessary dependencies, doesn’t directly affect the hosting platform libraries, automatically updates (in some cases), and (in most cases) is more secure than a standard application. Another benefit of these containerized applications is that they are universal (i.e., such an application would install on Ubuntu Linux or Fedora Linux, without having to convert a .deb package to an .rpm).

As of now, there are two main universal package systems: Snap and Flatpak. Both function in similar fashion, but one is found by default on Ubuntu-based systems (Snap) and one on Fedora-based systems (Flatpak). It should come as no surprise that both can be installed on either type of system. So if you want to run Snaps on Fedora, you can. If you want to run Flatpak on Ubuntu, you can.

I will walk you through the process of installing and using Flatpak on Ubuntu 18.04. If your platform of choice is Fedora (or a Fedora derivative), you can skip the installation process.

Installation

The first thing to do is install Flatpak. The process is simple. Open up a terminal window and follow these steps:

  1. Add the necessary repository with the command sudo add-apt-repository ppa:alexlarsson/flatpak.

  2. Update apt with the command sudo apt update.

  3. Install Flatpak with the command sudo apt install flatpak.

  4. Install Flatpak support for GNOME Software with the command sudo apt install gnome-software-plugin-flatpak.

  5. Reboot your system.

Usage

I’ll first show you how to install a Flatpak package from the command line, and then via the GUI. Let’s say you want to install the Spotify desktop client via Flatpak. To do this, you must first instruct Flatpak to retrieve the necessary app. The Spotify Flatpak (along with others) is hosted on Flathub. The first thing we’re going to do is add the Flathub remote repository with the following command:

sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Now you can install any Flatpak app found on Flathub. For example, to install Spotify, the command would be:

sudo flatpak install flathub com.spotify.Client

To find out the exact command for each install, you only have to visit the app’s page on Flathub and the installation command is listed beneath the description.

Running a Flatpak-installed app is a bit different than a standard app (at least from the command line). Head back to the terminal window and issue the command:

flatpak run com.spotify.Client

Of course, after you’ve re-started your machine (upon installing the GNOME Software Support), those apps should appear in your desktop menu, making it unnecessary to start them from the command line.

To uninstall a Flatpak from the command line, you would go back to the terminal and issue the command:

sudo flatpak uninstall NAME

where NAME is the name of the app to remove. In our Spotify case, that would be:

sudo flatpak uninstall com.spotify.Client

Now we want to update our Flatpak apps. To do this, first list all of your installed Flatpak apps by issuing the command:

flatpak list

Now that we have our list of apps (Figure 1), we can update with the command sudo flatpak update NAME (where NAME is the name of our app to update).

So if we want to update GIMP, we’d issue the command:

sudo flatpak update org.gimp.GIMP

If there are any updates to be applied, they’’ll be taken care of. If there are no updates to be applied, nothing will be reported.

Installing from GNOME Software

Let’s make this even easier. Since we installed GNOME Software support for flatpak, we don’t actually have to bother with the command line. Don’t be mistaken, unlike Snap support, you won’t actually find Flatpak apps listed within GNOME Software (even though we’ve installed Software support). Instead, you’ll find support through the web browser.

Let me show you. Point your browser to Flathub.

Let’s say you want to install Slack via Flatpak. Go to the Slack Flathub page and then click on the INSTALL button. Since we installed GNOME Software support, the standard browser dialog window will appear with an included option to open the file via Software Install (Figure 2).

 

This action will then open GNOME Software (or, in the case of Ubuntu, Ubuntu Software), where you can click the Install button (Figure 3) to complete the process.

Once the installation completes, you can then either click the Launch button, or close GNOME Software and launch the application from the desktop menu (in the case of GNOME, the Dash).

After you’ve installed a Flatpak app via GNOME Software, it can also be removed from the same system (so there’s still not need to go through the command line).

What about KDE?

If you prefer using the KDE desktop environment, you’re in luck. If you issue the command sudo apt install plasma-discover-flatpak-backend, it’ll install Flatpak support for the KDE app store, Discover. Once you’ve added Flatpak support, you then need to add a repository. Open Discover and then click on Settings. In the settings window, you’ll now see a Flatpak listing (Figure 4).

Click on the Flatpak drop-down and then click Add Flathub. Click on the Applications tab (in the left navigation) and you can then search for (and install) any applications found on Flathub (Figure 5).

Easy Flatpak management

And that’s the gist of using Flatpak. These universal packages can be used on most Linux distributions and can even be managed via the GUI on some desktop environments. I highly recommend you give Flatpak a try. With the combination of standard installation, Flatpak, and Snaps, you’ll find software management on Linux has become incredibly easy.

Learn more about Linux through the free “Introduction to Linux” course from The Linux Foundation and edX.

How to Run Your Own Git Server | Linux.com


Manage your code on your own server by running a bare, basic Git server or via the GitLab GUI tool.

Learn how to set up your own Git server in this tutorial from our archives.

Git is a versioning system developed by Linus Torvalds, that is used by millions of users around the globe. Companies like GitHub offer code hosting services based on Git. According to reports, GitHub, a code hosting site, is the world’s largest code hosting service. The company claims that there are 9.2M people collaborating right now across 21.8M repositories on GitHub. Big companies are now moving to GitHub. Even Google, the search engine giant, is shutting it’s own Google Code and moving to GitHub.

Run your own Git server

GitHub is a great service, however there are some limitations and restrictions, especially if you are an individual or a small player. One of the limitations of GitHub is that the free service doesn’t allow private hosting of the code. You have to pay a monthly fee of $7 to host 5 private repositories, and the expenses go up with more repos.

In cases like these or when you want more control, the best path is to run Git on your own server. Not only do you save costs, you also have more control over your server. In most cases a majority of advanced Linux users already have their own servers and pushing Git on those servers is like ‘free as in beer’.

In this tutorial we are going to talk about two methods of managing your code on your own server. One is running a bare, basic Git server and and the second one is via a GUI tool called GitLab. For this tutorial I used a fully patched Ubuntu 14.04 LTS server running on a VPS.

Install Git on your server

In this tutorial we are considering a use-case where we have a remote server and a local server and we will work between these machines. For the sake of simplicity we will call them remote-server and local-server.

First, install Git on both machines. You can install Git from the packages already available via the repos or your distros, or you can do it manually. In this article we will use the simpler method:

sudo apt-get install git-core

Then add a user for Git.

sudo useradd git
passwd git

In order to ease access to the server let’s set-up a password-less ssh login. First create ssh keys on your local machine:

ssh-keygen -t rsa

It will ask you to provide the location for storing the key, just hit Enter to use the default location. The second question will be to provide it with a pass phrase which will be needed to access the remote server. It generates two keys – a public key and a private key. Note down the location of the public key which you will need in the next step.

Now you have to copy these keys to the server so that the two machines can talk to each other. Run the following command on your local machine:

cat ~/.ssh/id_rsa.pub | ssh git@remote-server "mkdir -p ~/.ssh && cat >>  ~/.ssh/authorized_keys"

Now ssh into the server and create a project directory for Git. You can use the desired path for the repo.

git@server:~ $ mkdir -p /home/swapnil/project-1.git

Then change to this directory:

cd /home/swapnil/project-1.git

Then create an empty repo:

git init --bare
Initialized empty Git repository in /home/swapnil/project-1.git

We now need to create a Git repo on the local machine.

mkdir -p /home/swapnil/git/project

And change to this directory:

cd /home/swapnil/git/project

Now create the files that you need for the project in this directory. Stay in this directory and initiate git:

git init 
Initialized empty Git repository in /home/swapnil/git/project

Now add files to the repo:

git add .

Now every time you add a file or make changes you have to run the add command above. You also need to write a commit message with every change in a file. The commit message basically tells what changes were made.

git commit -m "message" -a
[master (root-commit) 57331ee] message
 2 files changed, 2 insertions(+)
 create mode 100644 GoT.txt
 create mode 100644 writing.txt

In this case I had a file called GoT (Game of Thrones review) and I made some changes, so when I ran the command it specified that changes were made to the file. In the above command ‘-a’ option means commits for all files in the repo. If you made changes to only one you can specify the name of that file instead of using ‘-a’.

An example:

git commit -m "message" GoT.txt
[master e517b10] message
 1 file changed, 1 insertion(+)

Until now we have been working on the local server. Now we have to push these changes to the server so the work is accessible over the Internet and you can collaborate with other team members.

git remote add origin ssh://git@remote-server/repo-<wbr< a="">>path-on-server..git

Now you can push or pull changes between the server and local machine using the ‘push’ or ‘pull’ option:

git push origin master

If there are other team members who want to work with the project they need to clone the repo on the server to their local machine:

git clone git@remote-server:/home/swapnil/project.git

Here /home/swapnil/project.git is the project path on the remote server, exchange the values for your own server.

Then change directory on the local machine (exchange project with the name of project on your server):

cd /project

Now they can edit files, write commit change messages and then push them to the server:

git commit -m 'corrections in GoT.txt story' -a
And then push changes:
git push origin master

I assume this is enough for a new user to get started with Git on their own servers. If you are looking for some GUI tools to manage changes on local machines, you can use GUI tools such as QGit or GitK for Linux.

QGit

Using GitLab

This was a pure command line solution for project owner and collaborator. It’s certainly not as easy as using GitHub. Unfortunately, while GitHub is the world’s largest code hosting service; its own software is not available for others to use. It’s not open source so you can’t grab the source code and compile your own GitHub. Unlike WordPress or Drupal you can’t download GitHub and run it on your own servers.

As usual in the open source world there is no end to the options. GitLab is a nifty project which does exactly that. It’s an open source project which allows users to run a project management system similar to GitHub on their own servers.

You can use GitLab to run a service similar to GitHub for your team members or your company. You can use GitLab to work on private projects before releasing them for public contributions.

GitLab employs the traditional Open Source business model. They have two products: free of cost open source software, which users can install on their own servers, and a hosted service similar to GitHub.

The downloadable version has two editions – the free of cost community edition and the paid enterprise edition. The enterprise edition is based on the community edition but comes with additional features targeted at enterprise customers. It’s more or less similar to what WordPress.org or WordPress.com offer.

The community edition is highly scalable and can support 25,000 users on a single server or cluster. Some of the features of GitLab include: Git repository management, code reviews, issue tracking, activity feeds, and wikis. It comes with GitLab CI for continuous integration and delivery.

Many VPS providers such as Digital Ocean offer GitLab droplets for users. If you want to run it on your own server, you can install it manually. GitLab offers an Omnibus package for different operating systems. Before we install GitLab, you may want to configure an SMTP email server so that GitLab can push emails as and when needed. They recommend Postfix. So, install Postfix on your server:

sudo apt-get install postfix

During installation of Postfix it will ask you some questions; don’t skip them. If you did miss it you can always re-configure it using this command:

sudo dpkg-reconfigure postfix

When you run this command choose “Internet Site” and provide the email ID for the domain which will be used by Gitlab.

In my case I provided it with:

This e-mail address is being protected from spambots. You need JavaScript enabled to view it
 

Use Tab and create a username for postfix. The Next page will ask you to provide a destination for mail.

In the rest of the steps, use the default options. Once Postfix is installed and configured, let’s move on to install GitLab.

Download the packages using wget (replace the download link with the latest packages from here) :

wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.9.4-omnibus.1-1_amd64.deb

Then install the package:

sudo dpkg -i gitlab_7.9.4-omnibus.1-1_amd64.deb

Now it’s time to configure and start GitLabs.

sudo gitlab-ctl reconfigure

You now need to configure the domain name in the configuration file so you can access GitLab. Open the file.

nano /etc/gitlab/gitlab.rb

In this file edit the ‘external_url’ and give the server domain. Save the file and then open the newly created GitLab site from a web browser.

GitLab 1

By default it creates ‘root’ as the system admin and uses ‘5iveL!fe’ as the password. Log into the GitLab site and then change the password.

GitLab 2

Once the password is changed, log into the site and start managing your project.

GitLab manage project page

GitLab is overflowing with features and options. I will borrow popular lines from the movie, The Matrix: “Unfortunately, no one can be told what all GitLab can do. You have to try it for yourself.”

A New CentOS » Linux Magazine


CentOS Release Manager, Karanbir Singh announced the release of CentOS Linux 7 1804, which is based on Red Hat Enterprise Linux (RHEL) 7.5.

CentOS is a community-maintained clone of RHEL, and it is targeted at users who want the functionality of RHEL without the need for Red Hat support. As a result, CentOS is extremely popular among web hosting providers that need thousands of virtual machine to run websites.

As CentOS emerged as a serious threat to RHEL, Red Hat moved swiftly to acquire the project. Many CentOS maintainers joined Red Hat. Since then, CentOS has maintained a measure of independence and continues to be available for free of cost.

Although CentOS is seen as downstream of RHEL, in some cases it also works as an upstream source. “ Developers and end users looking at inspecting and contributing patches to the CentOS Linux distro will find the code hosted at git.centos.org far simpler to work against,” wrote Singh.

Users are urged to upgrade to the latest version of CentOS. “This release supersedes all previously released content for CentOS Linux 7, and therefore we highly encourage all users to upgrade their machines. Information on different upgrade strategies and how to handle stale content is included in the Release Notes,” said Singh.

The system upgrade can be performed with these commands:

$ sudo yum clean all

$ sudo yum upgrade

$ sudo systemctl reboot

Download CentOS at the official download page.



Source link