<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>alias Archives - Alexandros Georgiou</title>
	<atom:link href="https://www.alexgeorgiou.gr/tag/alias/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.alexgeorgiou.gr/tag/alias/</link>
	<description>Balancing brackets for a living</description>
	<lastBuildDate>Wed, 20 Dec 2023 10:31:31 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.alexgeorgiou.gr/wp-content/uploads/2021/07/cropped-alexgeorgiou-icon-32x32.png</url>
	<title>alias Archives - Alexandros Georgiou</title>
	<link>https://www.alexgeorgiou.gr/tag/alias/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>🐗 Building WordPress plugins with an increasingly verbose Gruntfile</title>
		<link>https://www.alexgeorgiou.gr/increasingly-verbose-gruntfile/</link>
					<comments>https://www.alexgeorgiou.gr/increasingly-verbose-gruntfile/#comments</comments>
		
		<dc:creator><![CDATA[alexg]]></dc:creator>
		<pubDate>Fri, 24 Feb 2017 11:01:27 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[alias]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[grunt]]></category>
		<category><![CDATA[project management]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wp-cli]]></category>
		<guid isPermaLink="false">http://www.alexgeorgiou.gr/?p=192</guid>

					<description><![CDATA[<p>I am always aiming for a hierarchical Gruntfile.js structure that reminds me of increasingly verbose memes. And you should, too.</p>
<p>The post <a href="https://www.alexgeorgiou.gr/increasingly-verbose-gruntfile/">🐗 Building WordPress plugins with an increasingly verbose Gruntfile</a> appeared first on <a href="https://www.alexgeorgiou.gr">Alexandros Georgiou</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>When building WordPress plugins, I&#8217;m using <strong>gruntjs</strong> for all my project tooling needs. I am always aiming for a hierarchical Gruntfile.js structure that reminds me of <a href="http://knowyourmeme.com/memes/increasingly-verbose-memes" target="_blank" rel="noopener noreferrer">increasingly verbose memes</a>. And you should, too.</p>
<p>No matter which tool you&#8217;re using, building, testing, packaging and deploying a WordPress plugin should be one command. That way when you&#8217;re dev testing, you are actually testing the whole process, including installation, activation and deactivation of the plugin&#8217;s zip file. <a href="https://github.com/sindresorhus/grunt-shell" target="_blank" rel="noopener noreferrer">grunt-shell</a> and <a href="http://wp-cli.org/" target="_blank" rel="noopener noreferrer">wp-cli</a> are your friends. Use <a href="http://wp-cli.org/commands/option/" target="_blank" rel="noopener noreferrer"><strong>wp option</strong></a> liberally in your dev deployment code.</p>
<p>My Gruntfile.js describes all the steps needed between my code sitting in my working directory and the same code running in my WordPress dev environment.</p>
<p><a href="http://gruntjs.com/creating-tasks" target="_blank" rel="noopener noreferrer">Grunt alias tasks</a> let you define this process hierarchically. Use them! I aim to model the process so that at some level it has some resemblance to steps from the waterfall model: <strong>build</strong>, <strong>package</strong>, <strong>test</strong>, and <strong>deploy</strong> are verbs that I always aim to define in my script. Then, at a lower level I can define which grunt plugins actually accomplish each step.</p>
<p>When you have defined the steps in this way, then you can begin to create builds of varying quality or for various purposes. Testing takes too long to run every time in your development cycle? Create a quick build that excludes it. Want to have separate builds with and without documentation included? Define another package verb. Want to create a deliverable package but not deploy it? Create a task that omits the deploy verb.</p>
<p>The following is from an actual project I&#8217;m working on. Don&#8217;t worry about the details. You have your own workflow. All I&#8217;m saying is that you will benefit from structuring your script hierarchically.</p>
<p>Here&#8217;s my increasingly verbose meme. Make it viral!</p>
<p><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-193" src="http://www.alexgeorgiou.gr/wp-content/uploads/2017/02/grunt-meme.jpeg" alt="Increasingly verbose Gruntfile" width="640" height="800" srcset="https://www.alexgeorgiou.gr/wp-content/uploads/2017/02/grunt-meme.jpeg 640w, https://www.alexgeorgiou.gr/wp-content/uploads/2017/02/grunt-meme-240x300.jpeg 240w" sizes="(max-width: 599px) calc(100vw - 50px), (max-width: 767px) calc(100vw - 70px), (max-width: 991px) 429px, (max-width: 1199px) 637px, 354px" /></p>
<p>The post <a href="https://www.alexgeorgiou.gr/increasingly-verbose-gruntfile/">🐗 Building WordPress plugins with an increasingly verbose Gruntfile</a> appeared first on <a href="https://www.alexgeorgiou.gr">Alexandros Georgiou</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.alexgeorgiou.gr/increasingly-verbose-gruntfile/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Bash alias to create a TracGit link to your latest commit</title>
		<link>https://www.alexgeorgiou.gr/tracgit-link-latest-commit/</link>
					<comments>https://www.alexgeorgiou.gr/tracgit-link-latest-commit/#respond</comments>
		
		<dc:creator><![CDATA[alexg]]></dc:creator>
		<pubDate>Thu, 22 Sep 2016 15:49:29 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[alias]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[changeset]]></category>
		<category><![CDATA[clipboard]]></category>
		<category><![CDATA[commit]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[project management]]></category>
		<category><![CDATA[trac]]></category>
		<category><![CDATA[TracGit]]></category>
		<guid isPermaLink="false">http://www.alexgeorgiou.gr/?p=118</guid>

					<description><![CDATA[<p>I'd like to share with you a handy bash alias to create a TracGit link to your latest commit.</p>
<p>The post <a href="https://www.alexgeorgiou.gr/tracgit-link-latest-commit/">Bash alias to create a TracGit link to your latest commit</a> appeared first on <a href="https://www.alexgeorgiou.gr">Alexandros Georgiou</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>I&#8217;d like to share with you a handy bash alias to create a <em>TracGit</em> link to your latest commit.</p>
<h2>Don&#8217;t forget to add the TracGit link</h2>
<p>Who doesn&#8217;t use <em>git</em>? Nobody, that&#8217;s who. And who doesn&#8217;t use <a href="https://trac.edgewall.org/"><em>trac</em></a>? Well, actually, a lot of people. Nowadays <em>Joomla</em> seems to be all the rage. But <em>trac</em> is pretty cool and I use it for all the things! <em><a href="https://trac.edgewall.org/wiki/TracGit">TracGit</a></em> lets you setup your <em>git</em> repos so that you can <a href="http://stackoverflow.com/questions/9034099/how-can-i-make-a-link-to-a-git-changeset-in-trac-when-there-is-more-than-one-rep/9040055#9040055">link to your source from the trac tickets and wiki pages</a>.</p>
<p>As we all know by now, it&#8217;s a very, very good habit to link to your source changes when you close a ticket. In fact, I get to do that all the time. And whether it&#8217;s a single commit, or a merge from an entire branch of commits, it&#8217;s almost always the last change that you want to link to. So here&#8217;s a bash alias that gives you the exact <em>trac</em> syntax that you can copy from the shell and paste into your ticket.</p>
<pre>alias git-trac='echo [changeset:$(git log -1 --format="%h")/$(basename $(git rev-parse --show-toplevel))];';</pre>
<p>It&#8217;s nothing fancy, but I find myself using it all the time so I decided to share. Add it to your <code>~/.bashrc</code>, or better yet, to <code>~/.bash_aliases</code>, if you&#8217;re the organized type.</p>
<h2>One less step&#8230;</h2>
<p>If you&#8217;re anything like me, you&#8217;re way too busy to copy <em>and</em> paste stuff. If only you could skip one of those two steps and save valuable time&#8230;</p>
<p>Luckily, you can automate the copy to clipboard part! First install <em><a href="https://github.com/astrand/xclip">xclip</a></em>:</p>
<pre>sudo apt-get install xclip</pre>
<p>Then, your alias becomes:</p>
<pre>alias git-trac='echo [changeset:$(git log -1 --format="%h")/$(basename $(git rev-parse --show-toplevel))] | xclip -selection clipboard';</pre>
<p>Unfortunately, you&#8217;ll have to paste the string into <em>trac</em> yourself. If you&#8217;re thinking about automating that part, well, then I&#8217;ve got to ask, <em>what&#8217;s wrong with you?</em></p>
<p>The post <a href="https://www.alexgeorgiou.gr/tracgit-link-latest-commit/">Bash alias to create a TracGit link to your latest commit</a> appeared first on <a href="https://www.alexgeorgiou.gr">Alexandros Georgiou</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.alexgeorgiou.gr/tracgit-link-latest-commit/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
